标题:新手上路,请教高手问题!
只看楼主
tlx119
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-3-18
 问题点数:0 回复次数:8 
新手上路,请教高手问题!
我刚开始是学习JAVA,还没学算法,做了个题目遇到点困难,请大家帮忙
要求是将输入的数字,例如 7679536,倒过来输入 结果:6359767
我的代码:

public class DigitExtractor
{
    private int target;
    
    public DigitExtractor( int numbers)
    {
        target = numbers;
    }
    
    public void nextDigit()
    {
        int[] data = new int[10];
        
        for ( int i = 9; i >= 1; i--)
        {
            int digit = (int) (target / Math.pow(10, i));
            data[i] = digit;
            target -= digit * Math.pow(10, i);
        }
        
        for ( int m = 0; m <= 9; m++)
        {
            System.out.println(data[m]);
        }
    }
    
    public static void main ( String[] args)
    {
        DigitExtractor leot = new DigitExtractor(1234567895);
        leot.nextDigit();
    }

}


我向想大家请教好的算法,以及我这个方法里的问题该如何解决!
感谢
搜索更多相关主题的帖子: int JAVA digit target 
2008-03-18 07:06
tlx119
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-3-18
得分:0 
这个代码我认为有两个问题
一个是如何获得数字的“位数”,就是这里的 10
二个是如何获取个位数字,输出结果是:0987654321
2008-03-18 07:10
tlx119
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-3-18
得分:0 
请大家帮忙解答哈
2008-03-18 08:13
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
得分:0 
如果你只是想颠倒输入内容的顺序的话,有一个叫reverse的方法可以

I'm here, as always...
2008-03-18 09:42
Alistair001
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-2-24
得分:0 
你上面的代码只要将第一个for循环改为
for(int i=9; i<=0; i--)就能得到倒序
2008-03-19 19:49
sinner
Rank: 1
来 自:China
等 级:新手上路
帖 子:25
专家分:0
注 册:2008-1-8
得分:0 
晕。。我是小高中生,见到数学符号就晕啊,楼主看我的代码吧:

/**
 *  Numb.java
 *  這個類用於將以一個數字反轉
 */

public class Numb{
    
    private String str;//变量用于存放待处理数字

    /**构造方法,测试时,实例化对象时可以传个值*/
    public Numb(String str){
        this.str = str;
    }

    /**处理方法*/
    public String reverse(){
        /*定义空字符*/
        String s = "";
        /*获得字符串长度*/
        int c = str.length();
        /*放到字节数组中*/
        char[] chs = str.toCharArray();
        /*从后往前,循环赋值给空字符*/
        for(int i=c-1;i>=0;i--){
            s += String.valueOf(chs[i]);
        }
        /*返回处理结果*/
        return s;
    }
}

/**
 *  Test.java
 *
 *  這個类用于测试
 */
public class Test{
    
    public static void main(String[] args){

        Numb objNumb = new Numb("7679536");
        
        String s = objNumb.reverse();

        System.out.println(s);
    }
}

p.s:
   当然可以用集合,但既然初学嘛,况且是J2SE,还是自己尝试写写吧。呵呵~``
2008-03-21 18:40
heilong
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:777
专家分:0
注 册:2007-6-7
得分:0 
还是用集合吧。一下就搞定

风水鸡蛋壳,财去人安乐!----->
2008-03-21 20:29
tlx119
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-3-18
得分:0 
感谢大家帮忙!
2008-03-28 09:37
龙杰
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-3-29
得分:0 
我是一个JAVA新手,刚开始学习它,也刚开始学习编程,请问高手们我首先应该从那开始学
2008-03-29 20:27



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-203924-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.188787 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved