java简单题目day2

1,2,3,4能组成多少个互不相同且无重复数字的三位数

public static void exp1(){
            int sum = 0;
            for(int i=1;i<5;i++){
                for(int j=1;j<5;j++){
                    //判断十位和百位是否相同
                    if(j!=i){
                        for(int k=1;k<5;k++){
                            //判断个位和十位,百位是否相同
                            if(k!=j&&k!=i){
                                sum++;                                 System.out.println(""+i+j+k);
                            }           
                        }
                    }
                }
            }
            System.out.println("共有"+sum+"个数字");
        }

f1,f2两个文件的中单词交叉合并写入f3。f1,f2单词以回车或空格分隔

public static void exp2() throws IOException{
            String[] s1, s2;
            File f1,f2,f3;
            FileWriter fw = null;
            InputStreamReader reader = null;
            try{
                f1 = new File("src/week/1.txt");
                f2 = new File("src/week/2.txt");
                //得到读取文件长度的大小的字符数组
                char[] cbuf = new char[(int) f1.length()];
                //文件输入流
                reader = new InputStreamReader(new FileInputStream(f1));
                //读取定长
                reader.read(cbuf);
                //分割字符串用回车或者空格
                s1 = new String(cbuf).split("\r\n| ");
                cbuf = new char[(int) f2.length()];
                reader = new InputStreamReader(new FileInputStream(f2));
                reader.read(cbuf);  
                s2 = new String(cbuf).split("\r\n| ");
                f3 = new File("src/week/3.txt");
                fw = new FileWriter(f3);
                //构造写入的字符串
                StringBuilder sb = new StringBuilder();
                int i = 0;
                //如果s1长度大于s2,恰好构造完成
                while(i<s1.length){
                    sb.append(s1[i]+" ");
                    if(i<s2.length)
                        sb.append(s2[i]+" ");
                    i++;
                }
                //如果s1<s2,将s2剩下的长度添加到串尾
                if(s1.length<s2.length)
                {
                    for(int j=s1.length;j<s2.length;j++)
                        sb.append(s2[i]+" ");
                }
                //写入文件
                fw.write(sb.toString());
                //刷新输出流,否则写入不成功
                fw.flush();
                //从输入流中跳过并丢弃n个字节数据 回车占2个字节
                //System.out.println(br.skip(6));
            }catch(Exception e){
                e.printStackTrace();
            }finally{
                fw.close();
                reader.close();
            }
        }

“`需要注意的是java的回车是\r\n,如果只用\n来分割的话,写入后会出现换行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值