有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何使用安卓 studio中其他类的方法

我有两门课。java和其他。java。我的日期差异。java看起来像:

public class DateDifference {
    public static void main(String[] args) {
        // Creates two calendars instances
        Calendar cal1 = Calendar.getInstance();
        Calendar cal2 = Calendar.getInstance();

        // Set the date for both of the calendar instance
        cal1.set(2006, Calendar.DECEMBER, 30);
        cal2.set(2007, Calendar.MAY, 3);

        // Get the represented date in milliseconds
        long millis1 = cal1.getTimeInMillis();
        long millis2 = cal2.getTimeInMillis();

        // Calculate difference in milliseconds
        long diff = millis2 - millis1;

        // Calculate difference in seconds
        long diffSeconds = diff / 1000;

        // Calculate difference in minutes
        long diffMinutes = diff / (60 * 1000);

        // Calculate difference in hours
        long diffHours = diff / (60 * 60 * 1000);

        // Calculate difference in days
        long diffDays = diff / (24 * 60 * 60 * 1000);

        System.out.println("In milliseconds: " + diff + " milliseconds.");
        System.out.println("In seconds: " + diffSeconds + " seconds.");
        System.out.println("In minutes: " + diffMinutes + " minutes.");
        System.out.println("In hours: " + diffHours + " hours.");
        System.out.println("In days: " + diffDays + " days.");
    }
}

我怎样才能打印出其他时间的所有差异。java还是其他类


共 (4) 个答案

  1. # 1 楼答案

    正如你在As中提到的,从另一个类调用函数,对吗?到目前为止,我从你的问题中了解到的是,你可能把activityClass与常规java类混淆了,后者是完全不同的
    活动类——把它当作任何应用程序的入门类,在应用程序中,一切都在发生——小部件、列表、片段等。每当你打开任何应用程序,你首先看到的就是你的活动。好吧在activityClass中,你只能做android studio允许你做的事情。好吗
    问题是:

    Can you methods from other class in android studio?
    yes!

    class LoginActivity extends AppCompatActivity {
    
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.login_main);
    OtherClass oC = new OtherClass();
    oC.method();
      }
    }
    

    其他课程

    public class OtherClass{
    
    public void method() {
    system.out.println("Yes!!");
       }
    }
    
  2. # 2 楼答案

    您需要在DateDifference中创建除main之外的方法,并从所需的类中调用它。e、 g:

    public class DateDifference {
    
        /* 
        * If you're coding for Android you don't need the main function.
        * How to run an Android app is a completely different subject
        */
    
        public long getDifference(Calendar a, Calendar b) {
            long millisA = a.getTimeInMillis();
            long millisB = b.getTimeInMillis();
    
            return b - a;
        }
    
    }
    
    public class Others {
    
        // Say you want to display your diff here
        public void displayDiff() {
            DateDifference dateDifference = new DateDifference();
    
            Calendar a = Calendar.getInstance();
            Calendar b = Calendar.getInstance();
    
            a.set(2006, Calendar.DECEMBER, 30);
            b.set(2007, Calendar.MAY, 3);
    
            long diffMillis = dateDifference.getDifference(a, b);
            long diffSeconds = millisToSeconds(diffMillis);
            long diffMinutes = millisToMinutes(diffMillis);
            long diffHours = millisToHours(diffMillis);
            long diffDays = millisToDays(diffMillis);
    
            /*
            * If you're coding for Android you won't see this output in your app.
            * How to display data on an Android app is a completely different subject
            */
            System.out.println("In milliseconds: " + diffMillis + " milliseconds.");
            System.out.println("In seconds: " + diffSeconds + " seconds.");
            System.out.println("In minutes: " + diffMinutes + " minutes.");
            System.out.println("In hours: " + diffHours + " hours.");
            System.out.println("In days: " + diffDays + " days.");
        }
    
        private long millisToSeconds(long millis) {
            return millis / 1000;
        }
    
        private long millisToMinutes(long millis) {
            return diffMillis / (60 * 1000);
        }
    
        private long millisToHours(long millis) {
            return diffMillis / (60 * 60 * 1000);
        }
    
        private long millisToDays(long millis) {
            return diffMillis / (24 * 60 * 60 * 1000);
        }
    
    }
    
  3. # 3 楼答案

    如果你想调用其他方法。java的参数,你可以用它的名字和一个“.”来调用它

    Others.whatever(millis1);
    

    whatever方法必须是publicstatic。 如果想从另一个方法调用变量,可以将其公开

    public class DateDifference {
            public long millis1;
            public  long millis2;
            public  long diff;
            public  long diffSeconds;
            public  long diffMinutes;
            public  long diffHours;
            public  long diffDays;
        public static void main(String[] args) {
            // Creates two calendars instances
            Calendar cal1 = Calendar.getInstance();
            Calendar cal2 = Calendar.getInstance();
    
            // Set the date for both of the calendar instance
            cal1.set(2006, Calendar.DECEMBER, 30);
            cal2.set(2007, Calendar.MAY, 3);
    
            // Get the represented date in milliseconds
            millis1 = cal1.getTimeInMillis();
            millis2 = cal2.getTimeInMillis();
    
            // Calculate difference in milliseconds
            diff = millis2 - millis1;
    
            // Calculate difference in seconds
            diffSeconds = diff / 1000;
    
            // Calculate difference in minutes
            diffMinutes = diff / (60 * 1000);
    
            // Calculate difference in hours
            diffHours = diff / (60 * 60 * 1000);
    
            // Calculate difference in days
            diffDays = diff / (24 * 60 * 60 * 1000);
    
            System.out.println("In milliseconds: " + diff + " milliseconds.");
            System.out.println("In seconds: " + diffSeconds + " seconds.");
            System.out.println("In minutes: " + diffMinutes + " minutes.");
            System.out.println("In hours: " + diffHours + " hours.");
            System.out.println("In days: " + diffDays + " days.");
        }
    }
    

    要访问例如mills1,请执行以下操作:

    DateDifference.mills1;
    
  4. # 4 楼答案

    如果我没弄错你的问题,你想调用DateDifference中的代码。可以在DateDifference中创建静态函数。java并将所需代码放在那里,然后调用DateDifference。来自所需类的funstionName()