如何为 JAVA 编写一个简单的主函数
How to write a simple main function for JAVA
我是 JAVA 的初学者。我在做 LeetCode 中的 "insert intervals" 题。下面是问题。
给定一组非重叠区间,在区间中插入一个新区间(必要时合并)。
示例 1:
给定区间 [1,3],[6,9],将 [2,5] 插入并合并为 [1,5],[6,9]。
下面是代码。但是我不知道怎么写一个main函数。任何人都可以帮忙吗?非常感谢!
public class Solution {
public List<Interval> insert(List<Interval> intervals, Interval newInterval) {
List<Interval> res = new ArrayList<Interval>();
boolean inserted = false;
for (Interval it : intervals) {
if (inserted || it.end < newInterval.start) {
res.add(it);
} else if (it.start > newInterval.end) {
res.add(newInterval);
res.add(it);
inserted = true;
} else {
newInterval.start = Math.min(newInterval.start, it.start);
newInterval.end = Math.max(newInterval.end, it.end);
}
}
if (inserted == false) res.add(newInterval);
return res;
public static void main(String[] args) {
}
}
假设您只是想测试书面方法,这应该有所帮助。
public static void main(String[] args) {
Solution solution = new Solution();
List<Interval> intervals = new ArrayList<>(); //Create list of intervals
intervals.add(new Interval(1, 3));
intervals.add(new Interval(6, 9));
List<Interval> mergedIntervals = solution.insert(intervals, new Interval(2, 5));
System.out.println(mergedIntervals);
}
希望上面的代码是self-explanatory。我认为您已经定义了 class Interval
。这就是它的样子
private class Interval {
int start;
int end;
public Interval(int start, int end) {
this.start = start;
this.end = end;
}
@Override
public String toString() {
return "[" + start + "," + end + "]";
}
}
我是 JAVA 的初学者。我在做 LeetCode 中的 "insert intervals" 题。下面是问题。
给定一组非重叠区间,在区间中插入一个新区间(必要时合并)。
示例 1: 给定区间 [1,3],[6,9],将 [2,5] 插入并合并为 [1,5],[6,9]。
下面是代码。但是我不知道怎么写一个main函数。任何人都可以帮忙吗?非常感谢!
public class Solution {
public List<Interval> insert(List<Interval> intervals, Interval newInterval) {
List<Interval> res = new ArrayList<Interval>();
boolean inserted = false;
for (Interval it : intervals) {
if (inserted || it.end < newInterval.start) {
res.add(it);
} else if (it.start > newInterval.end) {
res.add(newInterval);
res.add(it);
inserted = true;
} else {
newInterval.start = Math.min(newInterval.start, it.start);
newInterval.end = Math.max(newInterval.end, it.end);
}
}
if (inserted == false) res.add(newInterval);
return res;
public static void main(String[] args) {
}
}
假设您只是想测试书面方法,这应该有所帮助。
public static void main(String[] args) {
Solution solution = new Solution();
List<Interval> intervals = new ArrayList<>(); //Create list of intervals
intervals.add(new Interval(1, 3));
intervals.add(new Interval(6, 9));
List<Interval> mergedIntervals = solution.insert(intervals, new Interval(2, 5));
System.out.println(mergedIntervals);
}
希望上面的代码是self-explanatory。我认为您已经定义了 class Interval
。这就是它的样子
private class Interval {
int start;
int end;
public Interval(int start, int end) {
this.start = start;
this.end = end;
}
@Override
public String toString() {
return "[" + start + "," + end + "]";
}
}