import java.util.*;
public class AlanTest
{
    public static void main(String[] args)
    { 
        GregorianCalendar gc=new GregorianCalendar();
        String now=gc.get(Calendar.YEAR)+(gc.get(Calendar.MONTH)+1)+gc.get(Calendar.DATE)+gc.get(Calendar.HOUR)+gc.get(Calendar.MINUTE)+gc.get(Calendar.SECOND);
        System.out.println("the time now is: "+now);
    }
}为什么提示“不兼容类型”?(红色的)

解决方案 »

  1.   

    ‘String now’?
    定义时间能用字符串来定义吗?
    建议换成Int试试
      

  2.   

    同意楼上的说法,GregorianCalendar的到其实是一个很长的一段数字,这些数字的单位是毫秒,是从1970年1月1日,到new GregorianCalendar()被调用的时间差,所以不难看出GregorianCalendar 的get(..)的到的都是int的类型而不是楼主想象中的String,要转换格式请使用java.text.Format 类,它提供了格式化日期的方法
      

  3.   

    int类型和int类型用+连接,是加法运算,最后结果是int类型,怎么能赋给String类型呢,
    应该改成
    String now= "" + gc.get(Calendar.YEAR)+(gc.get(Calendar.MONTH)+1)+gc.get(Calendar.DATE)+gc.get(Calendar.HOUR)+gc.get(Calendar.MINUTE)+gc.get(Calendar.SECOND); 
    在前面加个字符串
      

  4.   

    直接打印
    gc.get(Calendar.YEAR)+(gc.get(Calendar.MONTH)+1)+gc.get(Calendar.DATE)+gc.get(Calendar.HOUR)+gc.get(Calendar.MINUTE)+gc.get(Calendar.SECOND)
    就可以了
      

  5.   

    同意四楼 (你貌似 把好多int求和然后付给了 String)
      

  6.   

    GregorianCalendar.get()返回的是int类型,你把int用+运算符累加之后附值给String,所以出错!String now=String.valueOf(gc.get(Calendar.YEAR)+(gc.get(Calendar.MONTH)+1)+gc.get(Calendar.DATE)+gc.get(Calendar.HOUR)+gc.get(Calendar.MINUTE)+gc.get(Calendar.SECOND); 
    )
      

  7.   


    import java.util.*; 
    class AlanTest 

        public static void main(String[] args) 
        {  
            GregorianCalendar gc=new GregorianCalendar(); 
            String now=String.valueOf(gc.get(Calendar.YEAR))+"-"
            +String.valueOf((gc.get(Calendar.MONTH)+1))+"-"
            +String.valueOf(gc.get(Calendar.DATE))+" "
            +String.valueOf(gc.get(Calendar.HOUR))+":"
            +String.valueOf(gc.get(Calendar.MINUTE))+":"
            +String.valueOf(gc.get(Calendar.SECOND)); 
            System.out.println("the time now is: "+now); 
        } 

      

  8.   


    纠正,下次贴代码前一定要测试晕了String now = String.valueOf(gc.get(Calendar.YEAR)) + String.valueOf(gc.get(Calendar.MONTH) + 1)
                + String.valueOf(gc.get(Calendar.DATE)) + String.valueOf(gc.get(Calendar.HOUR))
                + String.valueOf(gc.get(Calendar.MINUTE)) + String.valueOf(gc.get(Calendar.SECOND));