Objetivo: Ler um arquivo em Linguagem Java e transferir os dados do arquivo para um vetor:
import conceito.VetorObjetos;
import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStreamReader;
import java.util.ArrayList;
public class Aplicacao1 {
public static void main(String[] args) throws IOException{
String nomeArquivo = null;
String nomeArquivoCompleto = "C:\\Users\\HENRIQUE\\Documents\\texto.txt";
nomeArquivo = nomeArquivoCompleto;
FileInputStream fin = null;
BufferedReader in = null;
String linha = null;
int qtddLinhas = 0;
String[] contatos = new String[qtddLinhas];
VetorObjetos vet = new VetorObjetos(qtddLinhas);
ArrayList list = new ArrayList();
try {
fin = new FileInputStream(nomeArquivo);
in = new BufferedReader(new InputStreamReader(fin));
while (in.ready()) {
linha = in.readLine();
if (linha == null) {
break;
}
list.add(linha);//adicionando os dados na lista
linha = linha.trim();
if (linha.length() != 0) {
System.out.println(linha);//imprimindo o arquivo
qtddLinhas++;
}
}
for(int i=0; i<qtddLinhas-1; i++){
System.out.print(" "+list.get(i));
}
System.out.println("\nQuantidade de linhas = " + qtddLinhas);
in.close();
} catch (FileNotFoundException e) {
System.out.println("Arquivo não encontrado ...");
System.exit(1);
}
}
}
Pesquisar neste blog
01/08/2019
13/07/2019
Threads usando com Java
Crie um semáforo (sinal de trânsito) usando Threads. O semáforo deve ficar verde por x segundos, depois brevemente amarelo seguido de y segundos na cor vermelha.
Resolução:
Enun CorSemafaro
/**
*
* @author HENRIQUE
*/
public enum CorSemafaro {
//VERDE, AMARELO, VERMELHO;
//opcional
VERDE(1000), AMARELO(300), VERMELHO(2000);//
private int tempoEspera;//
private CorSemafaro(int tempoEspera) {//
this.tempoEspera = tempoEspera;//
}
public int getTempoEspera() {//
return tempoEspera;//
}
}
Classe ThreadSemaforo
public class ThreadSemaforo implements Runnable{
private CorSemafaro cor;
private boolean parar;
private boolean corMudou;
public ThreadSemaforo() {
this.cor = CorSemafaro.VERMELHO;//inicia com vermelho
this.parar = false;
this.corMudou = false;
new Thread(this).start();//executa o metodo run
}
@Override
public void run() {
while(!parar){
try{
/*
switch (this.cor){
case VERMELHO: Thread.sleep(2000);break;
case AMARELO: Thread.sleep(300);break;
case VERDE: Thread.sleep(1000);break;
default:
break;
*/
Thread.sleep(this.cor.getTempoEspera());//opcional
this.mudarCor();
}catch(InterruptedException e){
e.printStackTrace();
}
}
}
private synchronized void mudarCor(){
switch (this.cor){
case VERMELHO:
this.cor = CorSemafaro.VERDE; break;
case AMARELO: this.cor = CorSemafaro.VERMELHO; break;
case VERDE: this.cor = CorSemafaro.AMARELO; break;
default:
break;
}
this.corMudou = true;
notify();//notifica a thread estiver esperando
}
public synchronized void esperaCorMudar(){
while(!this.corMudou){
try{
wait();
}catch (InterruptedException e){
e.printStackTrace();
}
}
this.corMudou = false;
}
public synchronized void deligarSemafaro(){
this.parar = true;
}
public CorSemafaro getCor() {
return cor;
}
public boolean isParar() {
return parar;
}
}
Classe principal
public class Aplicacao1 {
public static void main(String[] args) {
ThreadSemaforo semafaro = new ThreadSemaforo();
for(int i= 0; i< 10; i++){
System.out.println(semafaro.getCor());
semafaro.esperaCorMudar();
}
}
}
Resolução:
Enun CorSemafaro
/**
*
* @author HENRIQUE
*/
public enum CorSemafaro {
//VERDE, AMARELO, VERMELHO;
//opcional
VERDE(1000), AMARELO(300), VERMELHO(2000);//
private int tempoEspera;//
private CorSemafaro(int tempoEspera) {//
this.tempoEspera = tempoEspera;//
}
public int getTempoEspera() {//
return tempoEspera;//
}
}
Classe ThreadSemaforo
public class ThreadSemaforo implements Runnable{
private CorSemafaro cor;
private boolean parar;
private boolean corMudou;
public ThreadSemaforo() {
this.cor = CorSemafaro.VERMELHO;//inicia com vermelho
this.parar = false;
this.corMudou = false;
new Thread(this).start();//executa o metodo run
}
@Override
public void run() {
while(!parar){
try{
/*
switch (this.cor){
case VERMELHO: Thread.sleep(2000);break;
case AMARELO: Thread.sleep(300);break;
case VERDE: Thread.sleep(1000);break;
default:
break;
*/
Thread.sleep(this.cor.getTempoEspera());//opcional
this.mudarCor();
}catch(InterruptedException e){
e.printStackTrace();
}
}
}
private synchronized void mudarCor(){
switch (this.cor){
case VERMELHO:
this.cor = CorSemafaro.VERDE; break;
case AMARELO: this.cor = CorSemafaro.VERMELHO; break;
case VERDE: this.cor = CorSemafaro.AMARELO; break;
default:
break;
}
this.corMudou = true;
notify();//notifica a thread estiver esperando
}
public synchronized void esperaCorMudar(){
while(!this.corMudou){
try{
wait();
}catch (InterruptedException e){
e.printStackTrace();
}
}
this.corMudou = false;
}
public synchronized void deligarSemafaro(){
this.parar = true;
}
public CorSemafaro getCor() {
return cor;
}
public boolean isParar() {
return parar;
}
}
public class Aplicacao1 {
public static void main(String[] args) {
ThreadSemaforo semafaro = new ThreadSemaforo();
for(int i= 0; i< 10; i++){
System.out.println(semafaro.getCor());
semafaro.esperaCorMudar();
}
}
}
12/07/2019
Deadlock usando Thread com Java
Crie um semáforo (sinal de trânsito) usando Threads. O semáforo deve ficar verde por x segundos, depois brevemente amarelo seguido de y segundos na cor vermelha.
Resolução:
Classe ThreadSemafaro
import com.sun.swing.internal.plaf.synth.resources.synth;
public class ThreadSemafaro implements Runnable {
private CorSemafaro cor;
private boolean parar;
private boolean corMudou;
public ThreadSemafaro(){
this.cor = CorSemafaro.VERMELHO;//iniciando com a cor vermelha
this.parar = false;
this.corMudou = false;
new Thread(this).start();
}
@Override
public void run() {
while(!parar){
try {
/*switch (this.cor) {
case VERMELHO:
Thread.sleep(2000);
break;
case AMARELO:
Thread.sleep(300);
break;
case VERDE:
Thread.sleep(1000);
break;
default:
break;
}*/
Thread.sleep(this.cor.getTempoEspera());
this.mudarCor();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
private synchronized void mudarCor(){
switch (this.cor) {
case VERMELHO:
this.cor = CorSemafaro.VERDE;
break;
case AMARELO:
this.cor = CorSemafaro.VERMELHO;
break;
case VERDE:
this.cor = CorSemafaro.AMARELO;
break;
default:
break;
}
this.corMudou = true;
notify();
}
public synchronized void esperaCorMudar(){
while(!this.corMudou){
try {
wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
this.corMudou = false;
}
public synchronized void desligarSemafaro(){
this.parar = true;
}
public CorSemafaro getCor() {
return cor;
}
}
Enun CorSemaforo
public enum CorSemafaro {
VERDE(1000), AMARELO(300), VERMELHO(2000);
private int tempoEspera;
CorSemafaro(int tempoEspera){
this.tempoEspera = tempoEspera;
}
public int getTempoEspera(){
return tempoEspera;
}
}
Método principal
public class Principal1 {
public static void main(String[] args) {
ThreadSemafaro semafaro = new ThreadSemafaro();
for (int i=0; i<10; i++){
System.out.println(semafaro.getCor());
semafaro.esperaCorMudar();
}
semafaro.desligarSemafaro();
}
}
04/07/2019
Somador e subtrator completo 7483
Circuito somador e subtrator completo 74LS83
Clique aqui para fazer o download do arquivo feito no Logisim 2.7
Todo crédito desta postagem é para Deus e nosso salvador Jesus Cristo.
Palavras chave:
Complete subtractor and adder circuit
Hoàn thành trừ và mạch cộng
Voltooi subtractor en adder stroombaan
完整的減法器和加法器電路
Hoʻopiha i nā mea unuhi a me nā kaapuni hou
Поўная схема вымання і сумматара
Kompleto nga subtractor ug adder circuit
Kompletan sklop za oduzimanje i zbrajanje
Atupẹṣẹ ti pari ati adiye adder
Heill undirdráttur og adder hringrás
Msaada kamili na mzunguko wa nyongeza
Gcwalisa i-subtractor kunye neesekethe
![]() |
| Somador e subtrator completo |
![]() |
| Somador e subtrator completo |
Clique aqui para fazer o download do arquivo feito no Logisim 2.7
Todo crédito desta postagem é para Deus e nosso salvador Jesus Cristo.
Palavras chave:
Complete subtractor and adder circuit
Hoàn thành trừ và mạch cộng
Voltooi subtractor en adder stroombaan
完整的減法器和加法器電路
Hoʻopiha i nā mea unuhi a me nā kaapuni hou
Поўная схема вымання і сумматара
Kompleto nga subtractor ug adder circuit
Kompletan sklop za oduzimanje i zbrajanje
Atupẹṣẹ ti pari ati adiye adder
Heill undirdráttur og adder hringrás
Msaada kamili na mzunguko wa nyongeza
Gcwalisa i-subtractor kunye neesekethe
03/07/2019
Somador Completo
![]() |
| Somador completo |
Clique aqui para fazer o download do arquivo feito no Logisim 2.7
Todo crédito deste site é para Deus e nosso salvador Jesus Cristo.
Palavras chave:
Full Adder
Voller Addierer
Volle Adder
الأفعى الكامل
Adder complet
全加器
전체 가산기
Täydellinen täyttäjä
Complet Complet
מלא
Adder Lengkap
Pełny dodatek
Полный сумматор
Tam Toplayıcı
21/06/2019
Assinar:
Postagens (Atom)






















































