Java非法启动表达式

Her*_*ord 3 java expression

我已经做了一个谷歌,但无法解决我的代码在这里有什么问题.

我在第一个'Else if'的if语句中得到一个非法的表达式错误开始

我对Java很陌生,但我试图快速学习它是我希望的计算过程的要求.

任何帮助非常感谢.

import java.util.Scanner;

public class net_salary{

public static void main(String[]args){    
    Scanner in = new Scanner(System.in);    

    int income;
    int incometax;
    int afterincometax;
    int nationalinsurance;
    int afterni;
    int pension;

    income = in.nextInt();       

    if(income = 0) {
        incometax = 0;
    } else if (income >=9000 & <=21000) {
        incometax = income * 0.15;
    } else if (income >=21000 & <=31000) {
        incometax = income * 0.2;       
    } else if (income >=31000 & <=50000) {
        incometax = income * 0.225                
Run Code Online (Sandbox Code Playgroud)

Zéy*_*hin 6

你需要else if (income >=9000 && income <=21000)而不是else if (income >=9000 & <=21000).

同样适用于其他else if表达方式.

你必须对收入进行两次单独的比较.你不能说"如果收入大于或等于9000或小于或等于21000".您必须说"如果收入大于9000或收入小于或等于21000".

&是一个按位AND.&&是合乎逻辑的.

正如其他人所说,income = 0应该阅读income == 0.