在java中编译简单的hasse算法程序时出现非法字符错误

0 java

我似乎无法弄清楚为什么以下代码将无法编译.我在线上说错了:if ((number % 2) == 0) {.错误消息显示:"非法字符".该程序应该采取数字n.如果n ==为1,则程序停止.如果n是奇数,那么新的n ==(n*3)+1.如果n是偶数,则新n == n/2.

import java.util.Scanner; 
import java.lang.Math.*; 

public class HasseAlgoritme {

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

 System.out.print("Input the first starting number"); 
 int number = tastatur.next(); 

 while (number != 1) { 
  System.out.print(number);        
      if ((number % 2) ==  0) {       
        System.out.println(number);
      }          
      else {
        number = (number*3)+1; 
        System.out.print(number); 
      }              
 } 
}}
Run Code Online (Sandbox Code Playgroud)

Mar*_*oun 5

public static void main(string[] args)
Run Code Online (Sandbox Code Playgroud)

应该

                        ?
public static void main(String[] args)
Run Code Online (Sandbox Code Playgroud)

Java的区分大小写的!

number应该是String而不是an int,这将不会编译(或使用nextInt而不是next).