Member 12725278 Ответов: 1

Как мне сделать этот вопрос через тернарный оператор


import java.util.Scanner;
public class Character {
	char ch;
	int i;
	
	public void acceptData() {
		Scanner in = new Scanner(System.in);
		System.out.println("Enter any character");
		ch = in.nextLine().charAt(0);
		i = (int) ch;
	//public void check() {
	boolean b1 = (91 > i > 64) ;
	if(b1){
	String str = b1 ? "upper case" : rts;	
	}
	boolean b2 = (123 > i > 95);
	
	String rts = b2 ? "lower case" : "special character";
	}
	
	public static void main(String args[]) {
		Character obj = new Character();
		obj.acceptData();
		//obj.check();
		System.out.println(str);
	}
}


Что я уже пробовал:

в этом случае я попытался написать prgramm с помощью тернарного оператора, и он показывает ошибку компиляции, и я хочу игнорировать условия if else, какие исправления я должен сделать, чтобы правильно запустить программу?

[no name]

Исправить ошибки было бы хорошим началом.

Maciej Los

Что плохого в том, если ... еще?..

1 Ответов

Рейтинг:
2

David_Wimbley

Не знаю, что еще вы хотели сделать в качестве троичных операторов, но вот вы идете.

import java.util.Scanner;
public class Character {
	char ch;
	int i;
	
	public void acceptData() {
		Scanner in = new Scanner(System.in);
		System.out.println("Enter any character");
		ch = in.nextLine().charAt(0);
		i = (int) ch;
	
         //Ternary corrections here
	//b2 in use by rts, moved to top
	boolean b2 = (123 > i && i > 95);
	// RTS being called prior to being declared, moved to top
	String rts = b2 ? "lower case" : "special character";
	
	boolean b1 = (91 > i && i > 64) ;
	String str = b1 ? "upper case" : rts;	
	
	
	
	}
	
	public static void main(String args[]) {
		Character obj = new Character();
		obj.acceptData();
		//obj.check();
		System.out.println(str);
	}
}