importjava.util.Scanner;publicclassMC13{publicstaticvoidmain(String[]args){Scannerentrada=newScanner(System.in);doublenota;Stringconceito;System.out.println("Informe a nota do aluno: ");nota=entrada.nextDouble();if(nota>=10.9){conceito='e';}if(nota<=8.7&¬a>6.5){conceito='ms';}if(nota<=6.5&¬a>4.3){conceito='m';}if(nota<=4.3&¬a>2){conceito='mi';}if(nota<2){conceito='i';}}}
com char e string da erro, tem como usar esses retornos no conceito, qual seria a forma?
Não tem switch ou int; o problema dele é que ele está confundindo a notação de strings (que é com aspas duplas, assim: “mi”) com a notação de chars (que é com apóstrofos, assim: ‘c’).
P
pcjardim
realmente no seu código não tem switch, pra esse código funcionar é só mudar as aspas… ficaria assim:
importjava.util.Scanner;publicclassMC13{publicstaticvoidmain(String[]args){Scannerentrada=newScanner(System.in);doublenota;Stringconceito;System.out.println("Informe a nota do aluno: ");nota=entrada.nextDouble();if(nota>=10.9){conceito="e";}if(nota<=8.7&¬a>6.5){conceito="ms";}if(nota<=6.5&¬a>4.3){conceito="m";}if(nota<=4.3&¬a>2){conceito="mi";}if(nota<2){conceito="i";}}}
switch só funciona com tipos compatíveis com int “byte, short” ou ainda com char.
Foxlol
Eh no código dele não tem, mas postei pelo título do tópico!
Flw
Tchello
Só a título de informação, no Java 7 o switch finalmente suportará strings.
Abraços.
WRYEL
Tchello:
Só a título de informação, no Java 7 o switch finalmente suportará strings.
Abraços.
dessa eu não tava por dentro, estou pensando se devo sentir medo ou não …
P
pcjardim
Foxlol:
Eh no código dele não tem, mas postei pelo título do tópico!
Flw
Sim, com certeza! eu entendi…
Foxlol
WRYEL:
Tchello:
Só a título de informação, no Java 7 o switch finalmente suportará strings.
Abraços.
dessa eu não tava por dentro, estou pensando se devo sentir medo ou não …
Creio que “ainda” não hUIOehuIOHAei :lol:
Tchello
O switch de strings veio muito tarde no java…
Até a gente poder usar isso se medo vai levar um tempão, tem muita gente que ainda roda sistemas legados com a 1.5… imagine com a 7.
Abraços!
M
michelato
switch(conceito){
case "e":System.out.println("Excelente");
break;
}
tipow consertei o erro, caso eu queria continuar meu codigo usando o switch para retornar uma frase, não ha como usar assim néh?
E
entanglement
Por enquanto não. Quando o Java 7 sair, você vai poder fazer isso.
M
michelato
publicclassMC22{publicstaticvoidmain(String[]args){inti=0,soma=0;Stringnome=args[i];for(i=0;i<args.length;i++){System.out.println(args[i]+" possui "+args[i].length()+" caracteres");soma+=args[i].length();}System.out.println("Foram impressos "+soma+" caracteres");}}
com faria para imprimir quantos caracteres tem cada palavra da frase individualmente, sem usar arrays? tem como fazerr isso?
public class MC22{
public static void main(String[]args){
int soma=0;
String nome= "teste do programa";
for(int i=0; i <= nome.length(); i++){
soma = i;
}
System.out.println("Foram impressos "+soma+" caracteres");
}
}
tipo eu queria que o programa imprimisse assim
teste possui 5 caracteres
do possui 2 carcteres
programa possui 8 caracteres
gostaria de saber nos dois modos, com array e sem array!
franciscossouza
michelato:
tipo eu queria que o programa imprimisse assim
teste possui 5 caracteres
do possui 2 carcteres
programa possui 8 caracteres
Então é para…
public class MC22{
public static void main(String[]args){
String nome = "teste";
System.out.println(nome + " possui " + nome.length() + " caracteres.");
}
}
… fazer isso?
Agora, quanto aos arrays, você se refere a arrays de caracteres ao invés da classe String?
M
michelato
tipow se fosse uma string com varios palavras tipow um nome comleto entendeu?
M
michelato
public class MC23{
public static void main(String[]args){
int i=0,soma=0,c=0;
String frase = args[i];
String inversa="";
for( i=frase.length()-1 ; i>=0 ; i--){
inversa+=frase.charAt(i);
}
System.out.println(inversa);
}
}
ele não imprime toda a string que eu passo por referencia no ms-dos, tipow ele imprime ao contrario somente a primeira para,qual será o probllema?
e no outro codigo que eu postei eu estava me referenciando a uma string com 2 palavras ou mais e nao somente 1!
obrigado
franciscossouza
Ah, entendi. Você deseja passar várias palavras no args e imprimir todas? (:
public class MC22{
public static void main(String[]args){
for (String nome : args) {
System.out.println(nome + " possui " + nome.length() + " caracteres.");
}
}
}