Package methods
Class Matrix
java.lang.Object
methods.Matrix
Classe utilitária para operações com matrizes.
Esta classe fornece métodos para manipulação de matrizes bidimensionais, incluindo operações de impressão, operações aritméticas, verificação de propriedades e geração de matrizes aleatórias.
As operações são suportadas para vários tipos de dados, incluindo int, double, char, String e boolean.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic double[][]abs(double[][] m) Calcula o valor absoluto de cada elemento em uma matriz de números de ponto flutuante.static int[][]abs(int[][] m) Calcula o valor absoluto de cada elemento em uma matriz de inteiros.static double[]axisMean(double[][] m, int axis) Calcula a média dos elementos ao longo de um eixo específico em uma matriz de números de ponto flutuante.static int[]axisMean(int[][] m, int axis) Calcula a média dos elementos ao longo de um eixo específico em uma matriz de inteiros.static double[]axisSum(double[][] m, int axis) Calcula a soma dos elementos ao longo de um eixo específico em uma matriz de números de ponto flutuante.static int[]axisSum(int[][] m, int axis) Calcula a soma dos elementos ao longo de um eixo específico em uma matriz de inteiros.static int[][]ceil(double[][] m) Arredonda para cima os valores de uma matriz de números de ponto flutuante para inteiros.static booleanisDiagonal(double[][] m) Verifica se uma matriz de números de ponto flutuante é diagonal.static booleanisDiagonal(int[][] m) Verifica se uma matriz de inteiros é diagonal.static booleanisIdentity(double[][] m) Verifica se uma matriz de números de ponto flutuante é uma matriz identidade.static booleanisIdentity(int[][] m) Verifica se uma matriz de inteiros é uma matriz identidade.static booleanisNull(double[][] m) Verifica se uma matriz de números de ponto flutuante é uma matriz nula.static booleanisNull(int[][] m) Verifica se uma matriz de inteiros é uma matriz nula.static booleanisSquare(char[][] m) Verifica se uma matriz de caracteres é quadrada.static booleanisSquare(double[][] m) Verifica se uma matriz de números de ponto flutuante é quadrada.static booleanisSquare(int[][] m) Verifica se uma matriz de inteiros é quadrada.static booleanVerifica se uma matriz de strings é quadrada.static booleanisSymmetrical(double[][] m) Verifica se uma matriz de números de ponto flutuante é simétrica.static booleanisSymmetrical(int[][] m) Verifica se uma matriz de inteiros é simétrica.static double[][]prod(double[][] m, double d) Multiplica cada elemento de uma matriz de números de ponto flutuante por um escalar.static double[][]prod(double[][] m, double[][] n) Realiza a multiplicação de matrizes de números de ponto flutuante.static int[][]prod(int[][] m, double d) Multiplica cada elemento de uma matriz de inteiros por um escalar.static int[][]prod(int[][] m, int[][] n) Realiza a multiplicação de matrizes de inteiros.static int[][]randInt()Gera uma matriz 3x3 de números inteiros aleatórios entre 0 e 100.static int[][]randInt(int bound) Gera uma matriz 3x3 de números inteiros aleatórios entre 0 e o limite especificado.static int[][]randInt(int[] size) Gera uma matriz de números inteiros aleatórios entre 0 e 100 com dimensões especificadas.static int[][]randInt(int[] size, int bound) Gera uma matriz de números inteiros aleatórios entre 0 e o limite especificado, com dimensões personalizadas.static int[][]randInt(int[] size, int origin, int bound) Gera uma matriz de números inteiros aleatórios entre os limites especificados, com dimensões personalizadas.static int[][]randInt(int origin, int bound) Gera uma matriz 3x3 de números inteiros aleatórios entre os limites especificados.static double[][]random()Gera uma matriz 3x3 de números de ponto flutuante aleatórios entre 0 e 100.static double[][]random(double bound) Gera uma matriz 3x3 de números de ponto flutuante aleatórios entre 0 e o limite especificado.static double[][]random(double origin, double bound) Gera uma matriz 3x3 de números de ponto flutuante aleatórios entre os limites especificados.static double[][]random(int[] size) Gera uma matriz de números de ponto flutuante aleatórios entre 0 e 100 com dimensões especificadas.static double[][]random(int[] size, double bound) Gera uma matriz de números de ponto flutuante aleatórios entre 0 e o limite especificado, com dimensões personalizadas.static double[][]random(int[] size, double origin, double bound) Gera uma matriz de números de ponto flutuante aleatórios entre os limites especificados, com dimensões personalizadas.static int[][]round(double[][] m) Arredonda os valores de uma matriz de números de ponto flutuante para inteiros.static double[][]round(double[][] m, int dp) Arredonda os valores de uma matriz de números de ponto flutuante para um número específico de casas decimais.static int[]size(boolean[][] m) Retorna as dimensões de uma matriz de booleanos.static int[]size(char[][] m) Retorna as dimensões de uma matriz de caracteres.static int[]size(double[][] m) Retorna as dimensões de uma matriz de números de ponto flutuante.static int[]size(int[][] m) Retorna as dimensões de uma matriz de inteiros.static int[]Retorna as dimensões de uma matriz de strings.static double[][]sum(double[][] m1, double[][] m2) Soma duas matrizes de números de ponto flutuante elemento por elemento.static int[][]sum(int[][] m1, int[][] m2) Soma duas matrizes de inteiros elemento por elemento.static double[][]sumAll(double[][][] m) Soma todas as matrizes de números de ponto flutuante em um array tridimensional.static int[][]sumAll(int[][][] m) Soma todas as matrizes de inteiros em um array tridimensional.static StringtoString(boolean[][] m) Converte uma matriz de booleanos em uma representação de string.static StringtoString(char[][] m) Converte uma matriz de caracteres em uma representação de string.static StringtoString(double[][] m) Converte uma matriz de números de ponto flutuante em uma representação de string.static StringtoString(int[][] m) Converte uma matriz de inteiros em uma representação de string.static StringConverte uma matriz de strings em uma representação de string.static char[][]transpose(char[][] m) Calcula a transposta de uma matriz de caracteres.static double[][]transpose(double[][] m) Calcula a transposta de uma matriz de números de ponto flutuante.static int[][]transpose(int[][] m) Calcula a transposta de uma matriz de inteiros.static String[][]Calcula a transposta de uma matriz de strings.static int[][]trunc(double[][] m) Trunca os valores de uma matriz de números de ponto flutuante para inteiros.
-
Constructor Details
-
Matrix
public Matrix()
-
-
Method Details
-
toString
Converte uma matriz de inteiros em uma representação de string.- Parameters:
m- A matriz de inteiros a ser convertida- Returns:
- Uma string representando a matriz, com cada linha em uma nova linha
-
toString
Converte uma matriz de números de ponto flutuante em uma representação de string.- Parameters:
m- A matriz de doubles a ser convertida- Returns:
- Uma string representando a matriz, com cada linha em uma nova linha
-
toString
Converte uma matriz de caracteres em uma representação de string.- Parameters:
m- A matriz de caracteres a ser convertida- Returns:
- Uma string representando a matriz, com cada linha em uma nova linha
-
toString
Converte uma matriz de strings em uma representação de string.- Parameters:
m- A matriz de strings a ser convertida- Returns:
- Uma string representando a matriz, com cada linha em uma nova linha
-
toString
Converte uma matriz de booleanos em uma representação de string.- Parameters:
m- A matriz de booleanos a ser convertida- Returns:
- Uma string representando a matriz, com cada linha em uma nova linha
-
axisMean
public static int[] axisMean(int[][] m, int axis) Calcula a média dos elementos ao longo de um eixo específico em uma matriz de inteiros.- Parameters:
m- A matriz de inteirosaxis- O eixo ao longo do qual calcular a média (0 para linhas, 1 para colunas)- Returns:
- Um array contendo as médias calculadas
- Throws:
IllegalArgumentException- Se o eixo especificado não for 0 ou 1
-
axisMean
public static double[] axisMean(double[][] m, int axis) Calcula a média dos elementos ao longo de um eixo específico em uma matriz de números de ponto flutuante.- Parameters:
m- A matriz de doublesaxis- O eixo ao longo do qual calcular a média (0 para linhas, 1 para colunas)- Returns:
- Um array contendo as médias calculadas
- Throws:
IllegalArgumentException- Se o eixo especificado não for 0 ou 1
-
axisSum
public static int[] axisSum(int[][] m, int axis) Calcula a soma dos elementos ao longo de um eixo específico em uma matriz de inteiros.- Parameters:
m- A matriz de inteirosaxis- O eixo ao longo do qual calcular a soma (0 para linhas, 1 para colunas)- Returns:
- Um array contendo as somas calculadas
- Throws:
IllegalArgumentException- Se o eixo especificado não for 0 ou 1
-
axisSum
public static double[] axisSum(double[][] m, int axis) Calcula a soma dos elementos ao longo de um eixo específico em uma matriz de números de ponto flutuante.- Parameters:
m- A matriz de doublesaxis- O eixo ao longo do qual calcular a soma (0 para linhas, 1 para colunas)- Returns:
- Um array contendo as somas calculadas
- Throws:
IllegalArgumentException- Se o eixo especificado não for 0 ou 1
-
sum
public static int[][] sum(int[][] m1, int[][] m2) Soma duas matrizes de inteiros elemento por elemento.- Parameters:
m1- A primeira matriz de inteirosm2- A segunda matriz de inteiros- Returns:
- Uma nova matriz contendo a soma das duas matrizes de entrada
-
sum
public static double[][] sum(double[][] m1, double[][] m2) Soma duas matrizes de números de ponto flutuante elemento por elemento.- Parameters:
m1- A primeira matriz de doublesm2- A segunda matriz de doubles- Returns:
- Uma nova matriz contendo a soma das duas matrizes de entrada
-
sumAll
public static int[][] sumAll(int[][][] m) Soma todas as matrizes de inteiros em um array tridimensional.- Parameters:
m- Um array tridimensional de matrizes de inteiros- Returns:
- Uma matriz bidimensional contendo a soma de todas as matrizes
-
sumAll
public static double[][] sumAll(double[][][] m) Soma todas as matrizes de números de ponto flutuante em um array tridimensional.- Parameters:
m- Um array tridimensional de matrizes de doubles- Returns:
- Uma matriz bidimensional contendo a soma de todas as matrizes
-
trunc
public static int[][] trunc(double[][] m) Trunca os valores de uma matriz de números de ponto flutuante para inteiros.- Parameters:
m- A matriz de doubles a ser truncada- Returns:
- Uma matriz de inteiros com os valores truncados
-
round
public static int[][] round(double[][] m) Arredonda os valores de uma matriz de números de ponto flutuante para inteiros.- Parameters:
m- A matriz de doubles a ser arredondada- Returns:
- Uma matriz de inteiros com os valores arredondados
-
round
public static double[][] round(double[][] m, int dp) Arredonda os valores de uma matriz de números de ponto flutuante para um número específico de casas decimais.- Parameters:
m- A matriz de doubles a ser arredondadadp- O número de casas decimais para arredondar- Returns:
- Uma matriz de doubles com os valores arredondados para o número especificado de casas decimais
-
ceil
public static int[][] ceil(double[][] m) Arredonda para cima os valores de uma matriz de números de ponto flutuante para inteiros.- Parameters:
m- A matriz de doubles a ser arredondada para cima- Returns:
- Uma matriz de inteiros com os valores arredondados para cima
-
abs
public static int[][] abs(int[][] m) Calcula o valor absoluto de cada elemento em uma matriz de inteiros.- Parameters:
m- A matriz de inteiros- Returns:
- Uma nova matriz contendo o valor absoluto de cada elemento da matriz original
-
abs
public static double[][] abs(double[][] m) Calcula o valor absoluto de cada elemento em uma matriz de números de ponto flutuante.- Parameters:
m- A matriz de doubles- Returns:
- Uma nova matriz contendo o valor absoluto de cada elemento da matriz original
-
transpose
public static int[][] transpose(int[][] m) Calcula a transposta de uma matriz de inteiros.- Parameters:
m- A matriz de inteiros a ser transposta- Returns:
- A matriz transposta
-
transpose
public static double[][] transpose(double[][] m) Calcula a transposta de uma matriz de números de ponto flutuante.- Parameters:
m- A matriz de doubles a ser transposta- Returns:
- A matriz transposta
-
transpose
Calcula a transposta de uma matriz de strings.- Parameters:
m- A matriz de strings a ser transposta- Returns:
- A matriz transposta
-
transpose
public static char[][] transpose(char[][] m) Calcula a transposta de uma matriz de caracteres.- Parameters:
m- A matriz de caracteres a ser transposta- Returns:
- A matriz transposta
-
prod
public static int[][] prod(int[][] m, double d) Multiplica cada elemento de uma matriz de inteiros por um escalar.- Parameters:
m- A matriz de inteirosd- O valor escalar pelo qual multiplicar- Returns:
- Uma nova matriz com cada elemento multiplicado pelo escalar
-
prod
public static double[][] prod(double[][] m, double d) Multiplica cada elemento de uma matriz de números de ponto flutuante por um escalar.- Parameters:
m- A matriz de doublesd- O valor escalar pelo qual multiplicar- Returns:
- Uma nova matriz com cada elemento multiplicado pelo escalar
-
prod
public static int[][] prod(int[][] m, int[][] n) Realiza a multiplicação de matrizes de inteiros.- Parameters:
m- A primeira matriz de inteirosn- A segunda matriz de inteiros- Returns:
- O produto das duas matrizes
-
prod
public static double[][] prod(double[][] m, double[][] n) Realiza a multiplicação de matrizes de números de ponto flutuante.- Parameters:
m- A primeira matriz de doublesn- A segunda matriz de doubles- Returns:
- O produto das duas matrizes
-
isSymmetrical
public static boolean isSymmetrical(int[][] m) Verifica se uma matriz de inteiros é simétrica. Uma matriz é simétrica se for igual à sua transposta (M = M^T).- Parameters:
m- A matriz de inteiros a ser verificada- Returns:
- true se a matriz for simétrica, false caso contrário
-
isSymmetrical
public static boolean isSymmetrical(double[][] m) Verifica se uma matriz de números de ponto flutuante é simétrica. Uma matriz é simétrica se for igual à sua transposta (M = M^T).- Parameters:
m- A matriz de doubles a ser verificada- Returns:
- true se a matriz for simétrica, false caso contrário
-
isDiagonal
public static boolean isDiagonal(int[][] m) Verifica se uma matriz de inteiros é diagonal. Uma matriz é diagonal se todos os elementos fora da diagonal principal são zero.- Parameters:
m- A matriz de inteiros a ser verificada- Returns:
- true se a matriz for diagonal, false caso contrário
-
isDiagonal
public static boolean isDiagonal(double[][] m) Verifica se uma matriz de números de ponto flutuante é diagonal. Uma matriz é diagonal se todos os elementos fora da diagonal principal são zero.- Parameters:
m- A matriz de doubles a ser verificada- Returns:
- true se a matriz for diagonal, false caso contrário
-
isIdentity
public static boolean isIdentity(int[][] m) Verifica se uma matriz de inteiros é uma matriz identidade. Uma matriz identidade tem 1's na diagonal principal e 0's em todas as outras posições.- Parameters:
m- A matriz de inteiros a ser verificada- Returns:
- true se a matriz for uma matriz identidade, false caso contrário
-
isIdentity
public static boolean isIdentity(double[][] m) Verifica se uma matriz de números de ponto flutuante é uma matriz identidade. Uma matriz identidade tem 1's na diagonal principal e 0's em todas as outras posições.- Parameters:
m- A matriz de doubles a ser verificada- Returns:
- true se a matriz for uma matriz identidade, false caso contrário
-
isNull
public static boolean isNull(int[][] m) Verifica se uma matriz de inteiros é uma matriz nula. Uma matriz nula tem todos os elementos iguais a zero.- Parameters:
m- A matriz de inteiros a ser verificada- Returns:
- true se a matriz for uma matriz nula, false caso contrário
-
isNull
public static boolean isNull(double[][] m) Verifica se uma matriz de números de ponto flutuante é uma matriz nula. Uma matriz nula tem todos os elementos iguais a zero.- Parameters:
m- A matriz de doubles a ser verificada- Returns:
- true se a matriz for uma matriz nula, false caso contrário
-
size
public static int[] size(int[][] m) Retorna as dimensões de uma matriz de inteiros.- Parameters:
m- A matriz de inteiros- Returns:
- Um array de inteiros contendo o número de linhas e colunas da matriz
-
size
public static int[] size(double[][] m) Retorna as dimensões de uma matriz de números de ponto flutuante.- Parameters:
m- A matriz de doubles- Returns:
- Um array de inteiros contendo o número de linhas e colunas da matriz
-
size
Retorna as dimensões de uma matriz de strings.- Parameters:
m- A matriz de strings- Returns:
- Um array de inteiros contendo o número de linhas e colunas da matriz
-
size
public static int[] size(char[][] m) Retorna as dimensões de uma matriz de caracteres.- Parameters:
m- A matriz de caracteres- Returns:
- Um array de inteiros contendo o número de linhas e colunas da matriz
-
size
public static int[] size(boolean[][] m) Retorna as dimensões de uma matriz de booleanos.- Parameters:
m- A matriz de booleanos- Returns:
- Um array de inteiros contendo o número de linhas e colunas da matriz
-
isSquare
public static boolean isSquare(int[][] m) Verifica se uma matriz de inteiros é quadrada. Uma matriz é quadrada se tiver o mesmo número de linhas e colunas.- Parameters:
m- A matriz de inteiros a ser verificada- Returns:
- true se a matriz for quadrada, false caso contrário
-
isSquare
public static boolean isSquare(double[][] m) Verifica se uma matriz de números de ponto flutuante é quadrada. Uma matriz é quadrada se tiver o mesmo número de linhas e colunas.- Parameters:
m- A matriz de doubles a ser verificada- Returns:
- true se a matriz for quadrada, false caso contrário
-
isSquare
public static boolean isSquare(char[][] m) Verifica se uma matriz de caracteres é quadrada. Uma matriz é quadrada se tiver o mesmo número de linhas e colunas.- Parameters:
m- A matriz de caracteres a ser verificada- Returns:
- true se a matriz for quadrada, false caso contrário
-
isSquare
Verifica se uma matriz de strings é quadrada. Uma matriz é quadrada se tiver o mesmo número de linhas e colunas.- Parameters:
m- A matriz de strings a ser verificada- Returns:
- true se a matriz for quadrada, false caso contrário
-
random
public static double[][] random()Gera uma matriz 3x3 de números de ponto flutuante aleatórios entre 0 e 100.- Returns:
- Uma matriz 3x3 de doubles com valores aleatórios
-
random
public static double[][] random(int[] size) Gera uma matriz de números de ponto flutuante aleatórios entre 0 e 100 com dimensões especificadas.- Parameters:
size- Um array contendo as dimensões da matriz [linhas, colunas]- Returns:
- Uma matriz de doubles com valores aleatórios e dimensões especificadas
-
random
public static double[][] random(double bound) Gera uma matriz 3x3 de números de ponto flutuante aleatórios entre 0 e o limite especificado.- Parameters:
bound- O limite superior (exclusivo) para os valores aleatórios- Returns:
- Uma matriz 3x3 de doubles com valores aleatórios
-
random
public static double[][] random(double origin, double bound) Gera uma matriz 3x3 de números de ponto flutuante aleatórios entre os limites especificados.- Parameters:
origin- O limite inferior (inclusivo) para os valores aleatóriosbound- O limite superior (exclusivo) para os valores aleatórios- Returns:
- Uma matriz 3x3 de doubles com valores aleatórios dentro do intervalo especificado
-
random
public static double[][] random(int[] size, double bound) Gera uma matriz de números de ponto flutuante aleatórios entre 0 e o limite especificado, com dimensões personalizadas.- Parameters:
size- Um array contendo as dimensões da matriz [linhas, colunas]bound- O limite superior (exclusivo) para os valores aleatórios- Returns:
- Uma matriz de doubles com valores aleatórios e dimensões especificadas
-
random
public static double[][] random(int[] size, double origin, double bound) Gera uma matriz de números de ponto flutuante aleatórios entre os limites especificados, com dimensões personalizadas.- Parameters:
size- Um array contendo as dimensões da matriz [linhas, colunas]origin- O limite inferior (inclusivo) para os valores aleatóriosbound- O limite superior (exclusivo) para os valores aleatórios- Returns:
- Uma matriz de doubles com valores aleatórios dentro do intervalo especificado e com dimensões personalizadas
-
randInt
public static int[][] randInt()Gera uma matriz 3x3 de números inteiros aleatórios entre 0 e 100.- Returns:
- Uma matriz 3x3 de inteiros com valores aleatórios
-
randInt
public static int[][] randInt(int[] size) Gera uma matriz de números inteiros aleatórios entre 0 e 100 com dimensões especificadas.- Parameters:
size- Um array contendo as dimensões da matriz [linhas, colunas]- Returns:
- Uma matriz de inteiros com valores aleatórios e dimensões especificadas
-
randInt
public static int[][] randInt(int bound) Gera uma matriz 3x3 de números inteiros aleatórios entre 0 e o limite especificado.- Parameters:
bound- O limite superior (exclusivo) para os valores aleatórios- Returns:
- Uma matriz 3x3 de inteiros com valores aleatórios
-
randInt
public static int[][] randInt(int origin, int bound) Gera uma matriz 3x3 de números inteiros aleatórios entre os limites especificados.- Parameters:
origin- O limite inferior (inclusivo) para os valores aleatóriosbound- O limite superior (exclusivo) para os valores aleatórios- Returns:
- Uma matriz 3x3 de inteiros com valores aleatórios dentro do intervalo especificado
-
randInt
public static int[][] randInt(int[] size, int bound) Gera uma matriz de números inteiros aleatórios entre 0 e o limite especificado, com dimensões personalizadas.- Parameters:
size- Um array contendo as dimensões da matriz [linhas, colunas]bound- O limite superior (exclusivo) para os valores aleatórios- Returns:
- Uma matriz de inteiros com valores aleatórios e dimensões especificadas
-
randInt
public static int[][] randInt(int[] size, int origin, int bound) Gera uma matriz de números inteiros aleatórios entre os limites especificados, com dimensões personalizadas.- Parameters:
size- Um array contendo as dimensões da matriz [linhas, colunas]origin- O limite inferior (inclusivo) para os valores aleatóriosbound- O limite superior (exclusivo) para os valores aleatórios- Returns:
- Uma matriz de inteiros com valores aleatórios dentro do intervalo especificado e com dimensões personalizadas
-