A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© HM代景康 高级黑马   /  2013-11-3 17:33  /  8276 人查看  /  59 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

11月3日公开课第二天提问帖

请大家围绕今天的课程内容提问,以下是今天的课程内容

第一节课

答疑、回顾昨天视频中的重点

变量习题讲解

++、&&、|| 习题讲解

第二节课

for循环

while循环

循环嵌套

break与continue

提问要简洁清晰,这样老师才能更明确的回答你的问题!!

如问题无法论坛解决,老师会在后天的公开课,回答大家的问题。



59 个回复

正序浏览
蓝雨星空 发表于 2013-11-3 22:12
求解:int a=2;a+=a-=++a*a--;a=?

如何运算的啊?
回复 使用道具 举报
大国 发表于 2013-11-11 00:10
public static void COPY()  throws IOException
        {
                        BufferedInputStream  br=new BufferedInputStream

while((len=br.read())!=-1){
                         bw.write(len);
                        br.close();
                        bw.close();
                        }

因为使用的是缓冲流,所以必须要刷新缓冲流。
当你    bw.write(len);执行了这计划后,你就把,但是此时已经存到了流中,你必须刷新缓冲流,bw.flush();这样才把读的文件写到了文件中。
但是你接着有关闭了流,不能继续循环了,所以这也是错的。在读取和写入完毕后,在关闭流!


正确的是


while((len=br.read())!=-1){
                         bw.write(len);
                       bw.flush();
                        }
  br.close();
     bw.close();
回复 使用道具 举报
大国 发表于 2013-11-11 00:08
大哥  厉害      这是为什么呢   咋就不需要呢??

  if(file.getName().endsWith(".java"));
                            list.add(file);

因为你加了分号的话,那么就是条件判断成功后,执行的是空语句。
而  list.add(file);条件判断成功不能够都会执行。
回复 使用道具 举报
大国 初级黑马 2013-11-13 22:02:29
48#
顶一下                 
回复 使用道具 举报
大国 初级黑马 2013-11-11 00:10:42
47#
public static void COPY()  throws IOException
        {
                        BufferedInputStream  br=new BufferedInputStream
                                        (new FileInputStream("C:\\Users\\AD\\Desktop\\大小姐 - 金沙.mp3"));
                        BufferedOutputStream bw =new BufferedOutputStream
                                        (new FileOutputStream("C:\\Users\\AD\\Desktop\\黑马.mp3"));
                        //byte[] arr=new byte[1024];
                        int len=0;
                       
                        while((len=br.read())!=-1){
                         bw.write(len);
                        br.close();
                        bw.close();
                        }
        }



大侠  这个 呢       怎么 创建 文件里面   没东东。1k大小
求解
回复 使用道具 举报
大国 初级黑马 2013-11-11 00:08:06
46#
大哥  厉害      这是为什么呢   咋就不需要呢??
回复 使用道具 举报
大国 发表于 2013-11-10 21:47
File dir=new File("I:\\work\\IO_Demo\\src");
                List  list=new ArrayList();
                FileToList(dir,list ...

else
                        {
                                if(file.getName().endsWith(".java"));
                            list.add(file);
                         }  


多加了一个分号
回复 使用道具 举报
大国 初级黑马 2013-11-10 21:47:26
44#



        File dir=new File("I:\\work\\IO_Demo\\src");
                List<File>  list=new ArrayList<File>();
                FileToList(dir,list);
                System.out.println(list.size());
               
     }
        public static void FileToList(File dir , List<File> list)
        {
                File[] arr=dir.listFiles();
                for(File file : arr)
                {  
                        if(file.isDirectory())
                                FileToList(file ,list);
                        else
                        {
                                if(file.getName().endsWith(".java"));
                            list.add(file);
                         }  
                }
                       
        }
       



w为什么  我这个 list集合里面(list.size());   显示的是全部     而不是 以。java结尾的
文件数量
回复 使用道具 举报
蓝雨星空 发表于 2013-11-3 22:12
求解:int a=2;a+=a-=++a*a--;a=?

++a*a--的结果是9,之后a=2,a-=9,的结果是-7,a+=-7的结果是-5
回复 使用道具 举报
緈鍢丶咗掱縴 发表于 2013-11-5 17:27
这个应该不是char的大小写问题,这只是class的一个名称吧

你改了   调试一下就知道了    char  不能做类名的
回复 使用道具 举报
緈鍢丶咗掱縴 发表于 2013-11-5 17:27
这个应该不是char的大小写问题,这只是class的一个名称吧

char在java中是一个关键字,而类的名称不能用关键字
回复 使用道具 举报
lixiaju 发表于 2013-11-3 22:07
应该是位数的问题

搞成这样应该好明白一点

a+=a-=[(++a)*(a)--]

步骤:
1.先++a  结束后a=3
2.进行相乘运算:3*3=9  结束后再进行a--运算  结束后a=2
3.此时a+=a-=9  (此时的a=2)
4.从左至右依次运算   a+=a 运算完之后  a=4
5.a-=9运算完之后  a=-5

(回复错了楼层,换个姿势再来一次)
回复 使用道具 举报
lixiaju 发表于 2013-11-3 22:07
应该是位数的问题

搞成这样应该好明白一点

a+=a-=[(++a)*(a)--]

步骤:
1.先++a  结束后a=3
2.进行相乘运算:3*3=9  结束后再进行a--运算  结束后a=2
3.此时a+=a-=9  (此时的a=2)
4.从左至右依次运算   a+=a 运算完之后  a=4
5.a-=9运算完之后  a=-5
回复 使用道具 举报
这个应该不是char的大小写问题,这只是class的一个名称吧
回复 使用道具 举报
緈鍢丶咗掱縴 发表于 2013-11-5 16:40
class char{
        public static void main(String[ ] args)
          {

class char    改成   class Char      
回复 使用道具 举报
class char{
        public static void main(String[ ] args)
          {
                int a=3,b;
                b=a++;
                System.out.println(b);
                System.out.println(a);
                }
}

这个问题出现在哪里,不停报错,求教,谢谢!
回复 使用道具 举报
ka宾 发表于 2013-11-5 08:30
少了一个结束花括号呢

什么意思?
回复 使用道具 举报
ka宾 中级黑马 2013-11-5 08:30:53
34#

少了一个结束花括号呢
回复 使用道具 举报
Chens 初级黑马 2013-11-5 00:17:54
33#
蒼穹龍狼 发表于 2013-11-3 22:16
因为a++是输出了在加1 如果直接输出是5!如果到下面就边成6了!而++a是先加1再输出所以结果就变成7  ...

但是结果上课的时候是双7  我很不理解
回复 使用道具 举报
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 加入黑马