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 boolean
isDiagonal
(double[][] m) Verifica se uma matriz de números de ponto flutuante é diagonal.static boolean
isDiagonal
(int[][] m) Verifica se uma matriz de inteiros é diagonal.static boolean
isIdentity
(double[][] m) Verifica se uma matriz de números de ponto flutuante é uma matriz identidade.static boolean
isIdentity
(int[][] m) Verifica se uma matriz de inteiros é uma matriz identidade.static boolean
isNull
(double[][] m) Verifica se uma matriz de números de ponto flutuante é uma matriz nula.static boolean
isNull
(int[][] m) Verifica se uma matriz de inteiros é uma matriz nula.static boolean
isSquare
(char[][] m) Verifica se uma matriz de caracteres é quadrada.static boolean
isSquare
(double[][] m) Verifica se uma matriz de números de ponto flutuante é quadrada.static boolean
isSquare
(int[][] m) Verifica se uma matriz de inteiros é quadrada.static boolean
Verifica se uma matriz de strings é quadrada.static boolean
isSymmetrical
(double[][] m) Verifica se uma matriz de números de ponto flutuante é simétrica.static boolean
isSymmetrical
(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 String
toString
(boolean[][] m) Converte uma matriz de booleanos em uma representação de string.static String
toString
(char[][] m) Converte uma matriz de caracteres em uma representação de string.static String
toString
(double[][] m) Converte uma matriz de números de ponto flutuante em uma representação de string.static String
toString
(int[][] m) Converte uma matriz de inteiros em uma representação de string.static String
Converte 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
-