首页 > 编程知识 正文

java触发器执行完之后返回,触发器返回结果

时间:2023-12-28 21:11:03 阅读:329147 作者:OZFR

本文目录一览:

在Java中,return返回值的意义是什么?为什么要用返回值?

其实Java提供return,是为了保持调用者与被调用者进行通信的关键。比如某个对象调用了一个方法,他需要根据这个方法不同的返回值进行不同的业务处理。如果没有return机制的话,那就只能进行单一的业务处理了,不存在多种情况了。返回值的意义就是保持方法的调用者与被调用者进行通信的关键,这和java中异常抛出的机制是一样的。下面跟你简单说说return的两种用法吧,希望对你有帮助,谢谢

return的常用作用有以下两种

一种是返回参数所用的关键字,假如一个有返回值的方法执行完了之后需要返回一个参数,示例:public string functionTest(){

String a = "abc";

return a;

}

那么这个方法被调用之后就会返回一个值为abc的字符串,string result = functionTest();

第二种用法是,代码执行到此处终止。

比如当代码执行到某个地方会出现几种结果,然后其中一种结果就不能执行后续代码,这时候在那里加上一个return就可以终止后面的代码执行。

java中如何在方法运行完毕后返回main方法,而不致使程序结束

可以在最后添加一个输入文字的位置,或者使用循环,要求用户数据对应字符结束程序,否则继续。

这个要根据你的实际情况决定。

Java中怎么确定一个流程走完后返回页面,再调用一个接口

写一个实现userLogin接口的方法;然后把你页面传入的参数放入到该方法里面,然后把你调用方法返回的结果保存后返回到页面。

java try catch处理完后返回try(就是输入错误重新输入)

可以不用死循环的,用递归一样可以实现

下面是个简单的例子

import java.util.Scanner;

public class Test

{

public static void main(String[] args)

{

Test t = new Test();

t.input();

}

public void input()

{

Scanner s = new Scanner(System.in);

System.out.println("Please input a num");

try{

int num = s.nextInt();

System.out.println("You input "+num);

}

catch(Exception e)

{

System.out.println("Invalid input,try again");

input();

}

}

}

如何在java中获取线程异步执行之后的结果

java中提供了FutureV接口和实现了Future接口的FutureTaskV 类来将线程执行之后的结果返回(通过get()方法)。

1.FutureV接口

Runnable接口执行任务是不返回任何值的,Runnable的run()方法的执行结果是void,而Future接口的call方法是有返回结果的,这是Runnable跟Future的区别之一,它们的另一个不同之处就是实现了Runnable接口的任务执行是调用ExecutorService的execute(Runnable task)方法,而实现了Future接口的任务是调用ExecutorService的submit(Future task)方法。调用Future的get()方法就能直接得到任务的返回值,该方法会一直阻塞直到任务的结果出来为止,我们可以调用Future的isDone()方法来判断该任务的结果是否准备就绪。

[java] view plain copy

import java.util.concurrent.Callable;

import java.util.concurrent.ExecutionException;

import java.util.concurrent.ExecutorService;

import java.util.concurrent.Executors;

import java.util.concurrent.Future;

public class TestFuture {

public static void main(String[] args) throws InterruptedException, ExecutionException {

ExecutorService executor = Executors.newCachedThreadPool();

Future result1 = executor.submit(new Callable() {

@Override

public Integer call() throws Exception {

int sum = 0;

for (int i = 0; i 10; i++) {

sum += i;

}

return sum;

}

});

Future result2 = executor.submit(new Callable() {

@Override

public Integer call() throws Exception {

int sum = 0;

for (int i = 10; i 100; i++) {

sum += i;

}

return sum;

}

});

executor.shutdown();

System.out.println(result1.get() + result2.get());

}

}

2.FutureTask类

FutureTask实现了Future接口,将一个Callable实例作为参数传给它,就能创建一个FutureTask实例,然后用ExecutorService的submit方法来执行这个实例。最后同样是用get方法获取线程执行后的结果。

[plain] view plain copy

import java.util.concurrent.Callable;

import java.util.concurrent.ExecutionException;

import java.util.concurrent.ExecutorService;

import java.util.concurrent.Executors;

import java.util.concurrent.FutureTask;

public class TestFutureTask {

public static void main(String[] args) throws InterruptedException, ExecutionException {

ExecutorService executor = Executors.newCachedThreadPool();

Callable task = new Callable() {

@Override

public String call() throws Exception {

return "结果";

}

};

FutureTask ft = new FutureTask(task);

executor.submit(ft);

System.out.println(ft.get());

executor.shutdown();

}

}empty

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。