JAVA求助!写的小程序报的错我不懂啊!

import java.util.Scanner;

/*
 * 实现功能:
 * 输入一个整数,求从1到n这n个整数的十进制表示中1出现的次数。
 * 
 * 思路:
 * 1.使用Scanner工具类来获取用户输入的信息;
 * 2.定义有参带返回值的方法calcOne()来实现功能;
 * 3.方法体中使用循环语句判断1出现的次数。
 */
public class CalcNum {
	public static void main(String[] args) {
		System.out.println("请输入一个整数:");
		
		Scanner input = new Scanner(System.in);
		int numInput = input.nextInt();
		
		CalcNum hello = new CalcNum();
		int n1 = hello.calcOne(numInput);
		System.out.println("从1到"+numInput+"这"+numInput+"个整数中1出现的次数为:");
		System.out.println(n1);
		
		public int calcOne(int num) { // 这一句报错参数 calcOne 的修饰符不合法;只允许使用终态,标记“(”上有语法错误,应为 ;  ,标记“)”上有语法错误,应为 ;
			
		    int pow1 = 1;  
		    int pow2 = 10 * pow1;  
		    int  count = 0;  
		    while(num >= pow1) { 
		        pow2 = 10*pow1;  
		        switch( (num % pow2) / pow1) {  
		                case 0:  
		                    count += (num / pow2) * pow1;  
		                    break;  
		                case 1:  
		                    count += (num / pow2) * pow1;  
		                    count += num % pow1 + 1;  
		                    break;  
		                default :  
		                    count += (num / pow2 + 1) * pow1;  
		        }  
		        pow1 *= 10;  
		    }  
		    return count;  
		}
	
	
	
	
	}

}

这到底怎么了,我不懂不懂不懂,求指教。

Doris_pwj
浏览 1552回答 3
3回答

_Exception

CalcNum  你这个类呢  ?  calcOne 方法要写在 main 方法外面
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java