Оператор выбора в Java. If в Java [дубликат]

133
15 февраля 2018, 14:36

На данный вопрос уже ответили:

  • Как сравнивать строки в Java? 2 ответа

Я еще совсем зелен в java, при вводе male, все равно выводится Ms(Miss/Missis) + ник, хотя должно выводиться Mr.

package com.company.Start;
import com.company.objects.Visitor;
import java.util.Random;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
    Scanner n = new Scanner(System.in);
    System.out.println("What's your name?");
    String name = n.nextLine();
    Scanner s = new Scanner(System.in);
    System.out.println("What's your sex(male/female)? ");
    String sex = s.next();
    Random rnd = new Random(System.currentTimeMillis());
    int cash = rnd.nextInt(3000);
    Visitor join = new Visitor(name, sex);
    String mrs;
    if (sex == "male")
        mrs = "Mr ";
    else
        mrs = "Ms ";
   System.out.println("Hello, Dear " + mrs + name);
}
Answer 1

Для сравнения строк используйте метод equals. Если использовать ==, то выражение вернет true только при stringVar == stringVar. Короче сравнение у строк работает по другому.

И еще, правильнее было бы написать:

if (sex.equals("male"))
    mrs = "Mr ";
else if (sex.equals("female"))
    mrs = "Ms ";
else
    mrs = "UnknownSex"
READ ALSO
Сокращение дроби

Сокращение дроби

Начал изучать jquery, вот хочу написать скрипт для перевода десятичных дробей в обыкновенные

192
Как при выборе checkbox активировать блок?

Как при выборе checkbox активировать блок?

ЗдравствуйтеПодскажите, пожалуйста, как при выборе checkbox с id="ru"активировать блок

247
Медленный рендер Ajax-ответа

Медленный рендер Ajax-ответа

Есть сформированный Ajax-запрос вида:

286