ArrayList

add(Object o): adiciona à coleção o objeto passado como argumento.
size(): retorna o tamanho da coleção
get(int index): retorna um objeto dada uma posição.

import java.util.ArrayList;

public class JavaTeste {
public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista
frutas.add("Banana");
frutas.add("Melão");
frutas.add("Goiaba");
frutas.add("Morango");

// exibe os valores da lista
for(int i = 0; i < frutas.size(); i++){
System.out.println(frutas.get(i));
}

}
}

Resultado:

Banana
Melão
Goiaba
Morango

add(int index, Object element): adiciona um objeto dada uma posição.

import java.util.ArrayList;

public class JavaTeste {
public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista
frutas.add("Banana");
frutas.add("Melão");
frutas.add("Goiaba");
frutas.add("Morango");

frutas.add(1, "======");

// exibe os valores da lista
for(int i = 0; i < frutas.size(); i++){
System.out.println(frutas.get(i));
}

}
}

Resultado:

Banana
======
Melão
Goiaba
Morango

set(int index, Object element): edita um objeto dada uma posição.

import java.util.ArrayList;

public class JavaTeste {
public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista
frutas.add("Banana");
frutas.add("Melão");
frutas.add("Goiaba");
frutas.add("Morango");

frutas.set(1, "======");

// exibe os valores da lista
for(int i = 0; i < frutas.size(); i++){
System.out.println(frutas.get(i));
}

}
}

Resultado:

Banana
======
Goiaba
Morango

remove(int index): remove um objeto dada sua posição.

import java.util.ArrayList;

public class JavaTeste {
public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista
frutas.add("Banana");
frutas.add("Melão");
frutas.add("Goiaba");
frutas.add("Morango");

frutas.remove(1);

// exibe os valores da lista
for(int i = 0; i < frutas.size(); i++){
System.out.println(frutas.get(i));
}

}
}

Resultado:

Banana
Goiaba
Morango

clear(): apaga todo o conteúdo da coleção.

import java.util.ArrayList;

public class JavaTeste {
public static void main(String[] args) {
ArrayList<String> frutas = new ArrayList<String>();

// adiciona itens na lista
frutas.add("Banana");
frutas.add("Melão");
frutas.add("Goiaba");
frutas.add("Morango");

frutas.clear();

// exibe os valores da lista
for(int i = 0; i < frutas.size(); i++){
System.out.println(frutas.get(i));
}

}
}

Resultado

 

boolean contains(Object o): verifica se o objeto passado como argumento existe na coleção.
ArrayList lista = new ArrayList();
lista.add(“Jose”);
lista.add(“Maria”);
System.out.println(lista.contains(“Jose”)); // True
Object[ ] toArray(): converte os elementos da coleção em um array (rápidos acesso aos elementos).
ArrayList lista = new ArrayList();
lista.add(“Jose”);
lista.add(“Maria”);
lista.add(“Joao”);
Object[] elementos = lista.toArray();
for(int i=0; i<elementos.length;i++) {
System.out.println(elementos[i]);
}
int indexOf (Object o): retorna a posição de um objeto.
ArrayList lista = new ArrayList();
lista.add(“Jose”);
lista.add(“Maria”);
lista.add(“João”);
lista.indexOf(“Maria”); //1
int lastIndexOf (Object o): retorna o último índice de um objeto.
ArrayList lista = new ArrayList();
lista.add(“Maria”);
lista.add(“Maria”);
lista.lastIndexOf(“Maria”); //1

ArrayList (Matriz)

Não utilize Matriz no ArraList, pode acontecer erros.

Arquivo: JavaTeste.java

import java.util.ArrayList;

public class JavaTeste {
    public static void main(String[] args) {
        ArrayList < ArrayList > Exemplo = new ArrayList < ArrayList > ();

        int numero_deLinhas = 4;

        for (int i = 0; i < numero_deLinhas; i++) {
            Exemplo.add(new ArrayList < String > ());
        }

        Exemplo.get(0).add("Linha 1 Coluna 1");
        Exemplo.get(0).add("Linha 1 Coluna 2");
        Exemplo.get(0).add("Linha 1 Coluna 3");

        Exemplo.get(1).add("Linha 2 Coluna 1");
        Exemplo.get(1).add("Linha 2 Coluna 2");
        Exemplo.get(1).add("Linha 2 Coluna 3");

        Exemplo.get(2).add("Linha 3 Coluna 1");
        Exemplo.get(2).add("Linha 3 Coluna 2");
        Exemplo.get(2).add("Linha 3 Coluna 3");

        Exemplo.get(3).add("Linha 4 Coluna 1");
        Exemplo.get(3).add("Linha 4 Coluna 2");
        Exemplo.get(3).add("Linha 4 Coluna 3");

        for (int i = 0; i < numero_deLinhas; i++) {
            for (int j = 0; j < Exemplo.size(); j++) {
                try {
                    System.out.println(Exemplo.get(i).get(j));
                } catch (IndexOutOfBoundsException e) {}
            }
        }

    }
}

Resultado:

Linha 1 Coluna 1
Linha 1 Coluna 2
Linha 1 Coluna 3
Linha 2 Coluna 1
Linha 2 Coluna 2
Linha 2 Coluna 3
Linha 3 Coluna 1
Linha 3 Coluna 2
Linha 3 Coluna 3
Linha 4 Coluna 1
Linha 4 Coluna 2
Linha 4 Coluna 3

 

 

Funções Matemáticas

Para auxiliar os cálculos matemáticos, além dos operadores matemáticos de adição, subtração, multiplicação e divisão existem outras funçoes matemáticas.

Algumas funções são comuns, tais como: raiz quadrada, potênciação, módulo, etc. Outras exigem conhecimento a nível de 2º grau tais como: trigonometria e logarítmos.

Vejamos

Covertendo string para numérica

public class ExemploJava {

    public static void main(String[] args) {
        String Texto;
        Texto = "";

        // ==> Para testar, coloque o script abaixo aqui <==
        System.out.println(Texto);

    }
}

Atenção:
Se colocarmos números reais dentro de um conversor de números inteiros, sempre da erros, então:
Use conversores de números inteiros para números inteiros e
Use conversores de números reais para números reais.
Observando que os números devem ficar dentro da faixa estabelacida por Java.

Números Inteiros
Byte.parseByte(string)

De -128 a +127 (8 bits).
Transforma string em inteiro

Exemplo:
byte valor=Byte.parseByte("127");
Texto = "" + valor;

Resultado: 127

Short.parseShort(string) De -32.768 a +32.767 (16 bits)

Transforma string em inteiro

Exemplo:
short valor=Short.parseShort("-55");
Texto = "" + valor;

Resultado: -55

Integer.parseInt(String) De -2.147.483.648 a +2.147.483.647 (32 bits)
Transforma string em inteiro

Exemplo:
int valor=Integer.parseInt("1456");
Texto = "" + valor;

Resultado: 79

Long.parseLong(string) De -9.223.372.036.854.775.808 a +9.223.372.036.854.775.807 (64 bits)
Transforma string em inteiro

Exemplo:
long valor=Long.parseLong("5673456");
Texto = "" + valor;

Resultado: 79

Números Reais
Float.parseFloat(String)

(32 bits)
Transforma string em número real

Exemplo:
double valor=Float.parseFloat("79.65732");
Texto = "" + valor;

Resultado: 79.65732

Double.parseDouble(string)

(64 bits)
Transforma string em número real

Exemplo:
double valor=Double.parseDouble("79.65732");
Texto = "" + valor;

Resultado: 79.65732

Booleanos
Boolean.parseBoolean(string) Lógico

Transforma string em número real

Exemplo:
boolean valor=Boolean.parseBoolean("true");
Texto = "" + valor;

Resultado: true

 

Arredondando valores

Funções matemáticas comuns

Funções trigonométricas



Calculando o seno, cosseno e tangente pelo computador

Se o argumento estiver em graus, multiplique-o por PI()/180 ou use a função radianos() para convertê-lo em radianos.

Exemplo:

Arquivo ExemploJava.java

public class ExemploJava {

    public static double radianos() {
        return Math.PI / 180;
    }

    public static void main(String[] args) {
        String Texto;
        Texto = "";

        Texto += "\n" + Math.sin(Math.PI); // O seno de radianos de pi(0, aproximadamente). Resultado: 1.2246063538223773e-16
        Texto += "\n" + Math.sin(Math.PI / 2); // O seno de radianos de pi/2 (1). Resultado: 1
        Texto += "\n" + Math.sin(30 * Math.PI / 180); // O seno de 30 graus (0,5). Resultado: 0.49999999999999994
        Texto += "\n" + Math.sin(30 * radianos()); // O seno de 30 graus (0,5). Resultado: 0.49999999999999994
        Texto += "\n" + Math.cos(60 * Math.PI / 180); // O cosseno de 60 graus (0,5). Resuntado: 0.5000000000000001
        Texto += "\n" + Math.cos(60 * radianos()); // O cosseno de 60 graus (0,5). Resultado: 0.5000000000000001
        Texto += "\n" + Math.tan(45 * Math.PI / 180); // A tangente de 45 graus (1). Resultado: 0.9999999999999999
        Texto += "\n" + Math.tan(45 * radianos()); // A tangente de 45 graus (1). Resultado: 0.9999999999999999
        System.out.println(Texto);

    }
}

Resultado:

C:\ExemploJava>javac ExemploJava.java

C:\ExemploJava>java ExemploJava

1.2246467991473532E-16
1.0
0.49999999999999994
0.49999999999999994
0.5000000000000001
0.5000000000000001
0.9999999999999999
0.9999999999999999

C:\ExemploJava>

 

Calculando o arco seno, arco cosseno e arco tangente pelo computador

Retorna o arco seno ou o seno inverso de um número. O arco seno é o ângulo cujo seno é núm. O ângulo retornado é fornecido em radianos; o mesmo para arco cosseno e arco tangente.

Para expressar o arco seno em graus, multiplique o resultado por 180/PI( ) ou use a função graus().

Arquivo ExemploJava.java

public class ExemploJava {

    public static double graus() {
        return 180 / Math.PI;
    }

    public static void main(String[] args) {
        String Texto;
        Texto = "";

        Texto += "\n" + Math.round(Math.asin(0.5) * 180 / Math.PI); // O arco seno de 0,5 em graus é 30
        Texto += "\n" + Math.round(Math.asin(0.5) * graus()); // O arco seno de 0,5 em graus é 30
        Texto += "\n" + Math.round(Math.acos(-0.5) * 180 / Math.PI); // O arco cosseno de -0.5 em graus é 120
        Texto += "\n" + Math.round(Math.acos(-0.5) * graus()); // O arco cosseno de -0.5 em graus é 120
        Texto += "\n" + Math.round(Math.atan(1) * 180 / Math.PI); // O arco tangente de 1 em graus é 45
        Texto += "\n" + Math.round(Math.atan(1) * graus()); // O arco tangente de 1 em graus é 45

        System.out.println(Texto);

    }
}

Resultado:

C:\ExemploJava>javac ExemploJava.java

C:\ExemploJava>java ExemploJava

30
30
120
120
45
45

C:\ExemploJava>

Logarítmos


Funções de tratamento de String

Manipulando Strings

O Javascript é bastante poderoso no manuseio de Strings, fornecendo ao programador uma total flexibilidade em seu manuseio.

Abaixo apresentamos os métodos disponíveis para manuseio de strings.

public class ExemploJava {

    public static void main(String[] args) {
        String Texto;
        Texto = "";

        // ==> Para testar, coloque o script abaixo aqui <==
        System.out.println(Texto);

    }
}

length()

Retorna o comprimento de uma String.
* Obs: Com length parenteses.

Exemplo:
String s="Esta e uma string de texto";
Texto = "Tamanho da String = "+s.length()+" caracteres";

Resultado:
Tamanho da String = 26 caracteres

substring(indiceInicial, indiceFinal)

O método substring (subcadeia) retorna a cadeia que se estende do indice Inicial até o caractere logo antes de indice final. Se indice Inicial for maior que indice final, o método funciona como se ambos estivessem com as posições trocadas. Se os dois índices forem iguais, retorna uma cadeia vasia.

Exemplo:
String s="Esta e uma string de texto";
String s1=s.substring(4, 10);
Texto = s1;

Resultado:
"e uma"

charAt(posição)

Funciona da mesma forma que o substring, só que, retorna o caractere simples em uma posição específica na String.

Exemplo:
String s="Esta e uma string de texto";
char s1=s.charAt(5);
Texto = ""+s1;

Resultado: "e"

indexOf(caractere, [inicIndex])

O método indexOf faz a busca no objeto string pela primeira ocorrência do caractere e retorna o índice correspondente. o argumento inicIndex é opcional e indica a partir de onde inicia a busca. Podemos localizar os valores dos índices para todos os caracteres do mesmo tipo iniciando após o índice anterior.

Exemplo:
String text="Hello, world!";
int index=0;
Texto += "<pre>";
while(index<text.lastIndexOf("l")) {
index= text.indexOf("l", index+1);
Texto += index+"\t";
}
Texto += "\n";
Texto += "</pre>";

Resultado:" 2 3 10"

lastIndexOf(caractere, [inicIndex]) O método lasIndexOf é idêntico ao método index of exceto que faz a busca do caractere na cadeia do fim para o começo iniciando em inicIndex.
Veja o exemplo anterior
replace(palavra, substituto)

O método replace você insere uma palavra ou uma letra em que você deseja substituir por outra.

Exemplo:
String s="Este automovel é caro";
Texto = s.replace("automovel", "carro");

Resultado:
Este carro é caro

toLowerCase()

O método toLowerCase (para minúsculo) retorna a cadeia com todos os caracteres alterados para minúsculo.

Exemplo:
String s="ISTO É UM EXEMPLO";
Texto = s.toLowerCase();

Resultado:
isto é um exemplo

toUpperCase()

O método toUpperCase (para maiúsculo) retorna a cadeia com todos os caracteres alterados para maiúsculo.

Exemplo:
String s="isto é um exemplo";
Texto = s.toUpperCase();

Resultado:
ISTO É UM EXEMPLO

Ordenar String em Ordem Alfabética

Arquivo: ExemploJava.java
import java.util.ArrayList;
public class ExemploJava {

    public static ArrayList Texto;

    public static void main(String[] args) {
        Texto = new ArrayList();
        Texto.add("Tiago");
        Texto.add("Maria");
        Texto.add("Pedro");
        Texto.add("Carlos");
        Texto.add("Fabio");
        Texto.add("Ana");
        Texto.add("Francisco");
        Texto.add("Bianca");
        String memo = "";

        int total = Texto.size();
        if (total > 1) {
            for (int x = 0; x < total - 1; x++) {
                for (int y = x + 1; y < total; y++) {

                    if (Texto.get(x).toString().compareTo(Texto.get(y).toString()) > 0) {
                        memo = Texto.get(x).toString();
                        Texto.set(x, Texto.get(y));
                        Texto.set(y, memo);
                    }
                }
            }
        }
        for (int z = 0; z < total; z++) {
            System.out.println(Texto.get(z));
        }
    }
}
Resultado:

C:\ExemploJava>javac ExemploJava.java
Note: ExemploJava.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

C:\ExemploJava>java ExemploJava
Ana
Bianca
Carlos
Fabio
Francisco
Maria
Pedro
Tiago

C:\ExemploJava>

 

Manipulando datas e horas

Existe apenas uma função para que se possa obter a data e a hora. É a função Calendar.getInstance(). Esta funão devolve data e hora no formanto: Dia da semana, Nome do mês, Dia do mês, Hora:Minuto:Segundo e Ano

Ex:

Fri May 24 16:58:02 1996

Para se obter os dados separadamente, existem os seguintes métodos:



No exemplo 1 abaixo obteremos o dia da semana e as horas. Para tal, utilizaremos a variável DataToda para armazenar data e hora.

Arquivo ExemploJava.java

/*
Não use getYear, getDay (Como no Javascript).
a) São métodos "deprecated" - ou seja, não devem ser usados. Em vez disso, use java.util.Calendar.

b) Você não leu a documentação direito. getYear lhe volta o ano menos 1900, ou seja, para 2006 ele lhe retorna 2006 - 1900 = 106. getDay volta o dia da semana, sendo 0 = Domingo. E getMonth lhe retorna 0 para janeiro, 1 para fevereiro, e assim por diante.

c) Quando a linguagem Java foi definida, só existia o java.util.Date, e ela era bem boboca (o próprio James Gosling que a escreveu, e ele não quis pôr um monte de frescuras nela)
Na versão 1.1 alguém na Sun comprou um monte de código fonte da Taligent, uma joint-venture entre a IBM, a Apple e mais algumas companhias. Nesse pacotão veio a classe java.util.Calendar, que é terrivelmente complicada, e para encurtar a conversa eles disseram que tínhamos de usar java.util.Date E java.util.Calendar, sendo que aquelas coisas tipo "getDate", "getMonth", "getYear" que existem em java.util.Date não deveriam mais ser usadas.
*/

import java.util.Calendar;

public class ExemploJava {


    public static void main(String[] args) {
        String Texto;
        Texto = "";


        Calendar DataToda = Calendar.getInstance();

        int Dia_do_mes = DataToda.get(Calendar.DATE);
        int Dia_da_semana = DataToda.get(Calendar.DAY_OF_WEEK);
        int Mes = DataToda.get(Calendar.MONTH);
        int Ano = DataToda.get(Calendar.YEAR);

        // ---------------------------------------
        int Horas = DataToda.get(Calendar.HOUR_OF_DAY);
        int Minutos = DataToda.get(Calendar.MINUTE);
        int Segundos = DataToda.get(Calendar.SECOND);
        // ---------------------------------------
        String semana[];
        semana = new String[8];
        semana[0] = "";
        semana[1] = "Domingo";
        semana[2] = "Segunda";
        semana[3] = "Terça";
        semana[4] = "Quarta";
        semana[5] = "Quinta";
        semana[6] = "Sexta";
        semana[7] = "Sabado";
        String Semana_atual = semana[Dia_da_semana];
        //-------------------------
        String Mes2[];
        Mes2 = new String[12];
        Mes2[0] = "Janeiro";
        Mes2[1] = "Fevereiro";
        Mes2[2] = "Março";
        Mes2[3] = "Abril";
        Mes2[4] = "Maio";
        Mes2[5] = "Junho";
        Mes2[6] = "Julho";
        Mes2[7] = "Agosto";
        Mes2[8] = "Setembro";
        Mes2[9] = "Outubro";
        Mes2[10] = "Novembro";
        Mes2[11] = "Desembro";
        String Mes_atual = Mes2[Mes];
        Texto += Semana_atual + ", " + Dia_do_mes + " de " + Mes_atual + " de " + Ano;
        Texto += "\n";
        Texto += "São: " + Horas + " horas, " + Minutos + " minutos e " + Segundos + " segundos.";

        System.out.println(Texto);
    }
}

Resultado:

C:\ExemploJava>javac ExemploJava.java

C:\ExemploJava>java ExemploJava
Sabado, 27 de Fevereiro de 2016
São: 6 horas, 55 minutos e 27 segundos.

C:\ExemploJava>

exemplo 4: alterando a data

Para criar uma variável tipo Date com o conteúdo informado pela aplicação, existe o método set. Os mas importantes são:

Você pode simplificar as datas veja:

Tanto pode usar esta forma quanto da outra.

Arquivo ExemploJava.java

/*
Não use getYear, getDay (Como no Javascript).
a) São métodos "deprecated" - ou seja, não devem ser usados. Em vez disso, use java.util.Calendar.

b) Você não leu a documentação direito. getYear lhe volta o ano menos 1900, ou seja, para 2006 ele lhe retorna 2006 - 1900 = 106. getDay volta o dia da semana, sendo 0 = Domingo. E getMonth lhe retorna 0 para janeiro, 1 para fevereiro, e assim por diante.

c) Quando a linguagem Java foi definida, só existia o java.util.Date, e ela era bem boboca (o próprio James Gosling que a escreveu, e ele não quis pôr um monte de frescuras nela)
Na versão 1.1 alguém na Sun comprou um monte de código fonte da Taligent, uma joint-venture entre a IBM, a Apple e mais algumas companhias. Nesse pacotão veio a classe java.util.Calendar, que é terrivelmente complicada, e para encurtar a conversa eles disseram que tínhamos de usar java.util.Date E java.util.Calendar, sendo que aquelas coisas tipo "getDate", "getMonth", "getYear" que existem em java.util.Date não deveriam mais ser usadas.
*/

import java.util.Calendar;

public class ExemploJava {


    public static void main(String[] args) {
        String Texto;
        Texto = "";

        Calendar DataToda = Calendar.getInstance();

        int x_dia = 28;
        int x_mes = 4;
        int x_ano = 1997;

        // Tando pode usar desta forma:
        // DataToda.set(x_ano, x_mes, x_dia);
        //Quanto desta outra forma:
        DataToda.set(java.util.Calendar.YEAR, x_ano);
        DataToda.set(java.util.Calendar.MONTH, x_mes);
        DataToda.set(java.util.Calendar.DATE, x_dia);

        // ---------------------------------------
        int Dia_do_mes = DataToda.get(Calendar.DATE);
        int Dia_da_semana = DataToda.get(Calendar.DAY_OF_WEEK);
        int Mes = DataToda.get(Calendar.MONTH);
        int Ano = DataToda.get(Calendar.YEAR);

        String semana[];
        semana = new String[8];
        semana[0] = "";
        semana[1] = "Domingo";
        semana[2] = "Segunda";
        semana[3] = "Terça";
        semana[4] = "Quarta";
        semana[5] = "Quinta";
        semana[6] = "Sexta";
        semana[7] = "Sabado";
        String Semana_atual = semana[Dia_da_semana];
        //-------------------------
        String Mes2[];
        Mes2 = new String[12];
        Mes2[0] = "Janeiro";
        Mes2[1] = "Fevereiro";
        Mes2[2] = "Março";
        Mes2[3] = "Abril";
        Mes2[4] = "Maio";
        Mes2[5] = "Junho";
        Mes2[6] = "Julho";
        Mes2[7] = "Agosto";
        Mes2[8] = "Setembro";
        Mes2[9] = "Outubro";
        Mes2[10] = "Novembro";
        Mes2[11] = "Desembro";
        String Mes_atual = Mes2[Mes];
        Texto += Semana_atual + ", " + Dia_do_mes + " de " + Mes_atual + " de " + Ano;

        System.out.println(Texto);
    }
}

Resultado:

C:\ExemploJava>javac ExemploJava.java

C:\ExemploJava>java ExemploJava
Quarta, 28 de Maio de 1997

C:\ExemploJava>

exmeplo 3: vendo as horas

Arquivo ExemploJava.java

import java.util.Calendar;

public class ExemploJava {

    public static void main(String[] args) {
        String Texto;
        Texto = "";
        // Nome do arquivo: semana.txt
        Calendar rel = Calendar.getInstance();

        int hora = rel.get(Calendar.HOUR_OF_DAY);
        int minuto = rel.get(Calendar.MINUTE);
        int segundo = rel.get(Calendar.SECOND);

        String temp = "" + hora;
        temp += ((minuto < 10) ? ":0" : ":") + minuto;
        temp += ((segundo < 10) ? ":0" : ":") + segundo;

        Texto += "São exatamente: " + temp;

        System.out.println(Texto);
    }
}

Resultado:

C:\ExemploJava>javac ExemploJava.java

C:\ExemploJava>java ExemploJava
São exatamente: 7:05:23

C:\ExemploJava>

Diferenciação de datas

Arquivo: ExemploJava.java

import java.util.Calendar;

public class ExemploJava {

    public static void main(String[] args) {

        Calendar DataAtual = Calendar.getInstance();

        Calendar Data_1 = Calendar.getInstance();

        int x_dia = 28;
        int x_mes = 4;
        int x_ano = 1997;

        //Quanto desta outra forma:
        Data_1.set(java.util.Calendar.YEAR, x_ano);
        Data_1.set(java.util.Calendar.MONTH, x_mes);
        Data_1.set(java.util.Calendar.DATE, x_dia);


        Calendar Data_2 = Calendar.getInstance();

        int y_dia = 12;
        int y_mes = 6;
        int y_ano = 2160;

        //Quanto desta outra forma:
        Data_2.set(java.util.Calendar.YEAR, y_ano);
        Data_2.set(java.util.Calendar.MONTH, y_mes);
        Data_2.set(java.util.Calendar.DATE, y_dia);

        if (Data_1.compareTo(DataAtual) < 0) {
            System.out.println("Passado");
        }
        if (Data_2.compareTo(DataAtual) > 0) {
            System.out.println("Futuro");
        }

    }
}

No Prompt

C:\ExemploJava>javac ExemploJava.java

C:\ExemploJava>java ExemploJava
Passado
Futuro

C:\ExemploJava>

 

Operação Resultado
"FRED".equals("FRED") true (verdadeiro)
! "SAM".equals("FRED") true (verdadeiro)
"TWO".equals("ONE") false (falso)
! "TRHEE".equals("TRHEE") false (falso)
Comparações de strings não são feitas com o operador == e sim com o método equals ou com equalsIgnoreCase (que ignora maiúsculas e minúsculas).