Interface Matrice

All Known Implementing Classes:
AbsMatrice, MatriceDensa, MatriceDiagonale, MatriceIdentità, MatriceNulla

public interface Matrice
Interfaccia che descrive il contratto di una matrice immutabile, quadrata e a valori interi.
  • Method Summary

    Modifier and Type
    Method
    Description
    default boolean
    Restituisce true se e solo se la matrice data ha la stessa dimensione di quetsa.
    default boolean
    Restituisce true se e solo se il vettore dato ha la stessa dimensione di quetsa matrice.
    int
    dim()
    Restituisce la dimensione di questa matrice, è un valore sempre positivo.
    per(int alpha)
    Restituisce una nuova matrice ottenuta moltiplicando questa matrice per lo scalare dato.
    Restituisce una nuova matrice ottenuta moltiplicando questa matrice per la matrice data.
    Restituisce il vettore ottenuto moltiplicando questa matrice per il vettore dato.
    Restituisce una nuova matrice ottenuta sommando questa matrice alla matrice data.
    default void
    requireValidIJ(int i, int j)
    Consente di assicurare che la posizione data sia valida.
    int
    val(int i, int j)
    Restituisce il valore di posto dato di questa matrice.
  • Method Details

    • dim

      int dim()
      Restituisce la dimensione di questa matrice, è un valore sempre positivo.
      Returns:
      la dimensione.
    • val

      int val(int i, int j) throws IndexOutOfBoundsException
      Restituisce il valore di posto dato di questa matrice.
      Parameters:
      i - la riga.
      j - la colonna.
      Returns:
      il valore.
      Throws:
      IndexOutOfBoundsException - se (almeno) uno degli indici è negativo, o maggiore o uguale alla dimensione di questa matrice.
    • per

      Matrice per(int alpha)
      Restituisce una nuova matrice ottenuta moltiplicando questa matrice per lo scalare dato.
      Parameters:
      alpha - lo scalare.
      Returns:
      la nuova matrice.
    • più

      Restituisce una nuova matrice ottenuta sommando questa matrice alla matrice data.
      Parameters:
      B - la matrice.
      Returns:
      la nuova matrice.
      Throws:
      NullPointerException - se la matrice è null.
      IllegalArgumentException - se le matrici non sono conformi.
    • per

      Restituisce una nuova matrice ottenuta moltiplicando questa matrice per la matrice data.
      Parameters:
      B - la matrice.
      Returns:
      la nuova matrice.
      Throws:
      NullPointerException - se la matrice è null.
      IllegalArgumentException - se le matrici non sono conformi.
    • per

      Restituisce il vettore ottenuto moltiplicando questa matrice per il vettore dato.
      Parameters:
      v - il vettore.
      Returns:
      il risultato.
      Throws:
      NullPointerException - se il vettore è null.
      IllegalArgumentException - se le matrice e il vettore non sono confrmi.
    • conforme

      default boolean conforme(Vettore v) throws NullPointerException
      Restituisce true se e solo se il vettore dato ha la stessa dimensione di quetsa matrice.
      Parameters:
      v - il vettore.
      Returns:
      true se e solo se il vettore è conforme a questa matrice.
      Throws:
      NullPointerException - se il vettore è null.
    • conforme

      default boolean conforme(Matrice M) throws NullPointerException
      Restituisce true se e solo se la matrice data ha la stessa dimensione di quetsa.
      Parameters:
      M - la matrice.
      Returns:
      true se e solo se la matrice è conforme a questa.
      Throws:
      NullPointerException - se la matrice è null.
    • requireValidIJ

      default void requireValidIJ(int i, int j)
      Consente di assicurare che la posizione data sia valida.
      Parameters:
      i - la riga.
      j - la colonna.
      Throws:
      IllegalArgumentException - se (almeno) uno degli indici è negativo, o maggiore o uguale alla dimensione di questa matrice.