精华内容
下载资源
问答
  • python退出循环有几种方法

    千次阅读 2019-10-28 11:05:14
    1、退出循环有几种方法 for循环通过迭代对象退出。由于while循环通常不知道循环的次数,所以对于while循环,它的几种应用场景导致退出条件设置的不同。 (1)可使用while循环让程序在用户在愿意的时不断运行。 在...

    1、退出循环有几种方法
    for循环通过迭代对象退出。由于while循环通常不知道循环的次数,所以对于while循环,它的几种应用场景导致退出条件设置的不同。

    (1)可使用while循环让程序在用户在愿意的时不断运行。
    在其中定义一个退出值,只要用户输入的不是这个,程序就接着运行。

    active = True 
    while active:
        message = input()
        if message =="quit":
            active = False
        else:
            print(message)
    

    active是我们开始就定义的一个while触发器
    message定义用户输入字符
    quit是退出条件,若用户输入quit,则active转换属性,下次循环退出。

    (2)用break退出:当明确遇到某些条件即退出时使用
    当程序执行到break,不管后面直接退出循环(而不是if-else模块)。
    break主要用于控制if-else语句,可使用ta来控制哪些代码将执行,哪些代码不执行。

    prompt = "请输入你曾去过的城市名字(当你不想玩的时候输入'quit'退出程序)"
    while True:
        if city == 'quit':
            break
        else:
            print("i'd love to go to"+'city.title()')
    

    (3)在循环中使用continue:当循环中需要跳过一些值时使用
    当程序执行到continue,直接跳出本次循环,进入下一次循环。在遇到continue的时候,不管后面的else直接进入下一次while。
    例:从1到10,如果是奇数则输出,偶数则跳过

    chuzhi = 0
    while chuzhi !=10:
        chuzhi += 1
        if chuzhi%2 ==0:
            continue
        else:
            print(chuzhi)
    
    展开全文
  • delphi关闭程序有几种方法

    万次阅读 2014-04-22 15:03:33
    delphi关闭程序有几种方法? 在Delphi中,对于的关闭有free,close,closeQuery,Destroy,Terminate,halt等,它们的区别是什么?是不是还有别的关闭方法? 谢谢! Application.Terminate中止应用程序的运行,比较安全...
    
    delphi关闭程序有几种方法? 在Delphi中,对于的关闭有free,close,closeQuery,Destroy,Terminate,halt等,它们的区别是什么?是不是还有别的关闭方法?
    谢谢! Application.Terminate中止应用程序的运行,比较安全。而Halt则完全停止程序,这种完全停止,会忽略任何try finally块、任何finalization语句块以及Delphi编译器自动编译优化的内存清理代码的执行,从而造成内存丢失。强烈建议不要使用Halt。

    使用Application.Terminate还会触发一些事件,而Halt绝对不会
    Application.Terminate 不会触发CLOSE事件

    close是正常的关闭方法

    FREE与DESTROY不是关闭的方法而是释放所创建的对象,不会关闭程序

    其它的关闭关法是调用API方式的,如结束进程的方式一般一用,正常情况中只要用close
    或者terminate

    展开全文
  • 如何创建线程?创建线程有几种方法?怎么实现的?

    多线程有几种实现方法?

    多线程实现又3种方法,其中前两中是常用的方法,推荐第二种方法,一个类应该在其修改或者加强是才继承

    1.继承Thread类,重写run()方法,实例化该类,调用线程start()方法

    (1)自定义类,继承Thread类,重写run()方法

    (2)创建该Thread子类实例

    (3)然后调用线程start()方法


        public class TestThread extends  Thread{
            @Override
            public void run() {
                printThreadMsg("1.2.new TestThread run");
            }
        }
        /**
         * 打印线程信息
         * @param msg
         */
        private void printThreadMsg(String msg)
        {
            System.out.println(msg+":threadName:"+Thread.currentThread().getName()+",threadId:"+Thread.currentThread().getId());
        }

            /**
             * 1.1 匿名内部类(继承Thread类,重写run()方法)
             */
            new Thread(){
                @Override
                public void run() {
                    printThreadMsg("1.1 new Thread() run");
                }
            }.start();
            /**
             * 1.2 继承Thread类,重写run()方法
             */
            new TestThread().start();

    2.实现Runnable接口,并实现该接口的run()的方法,

    具体步骤:

    (1)自定义类,并实现Runnable接口,实现run()方法

    (2)创建Thread子类实例:用实现Runnable接口的对象作为参数实例化个Thread对象

    (3)然后调用线程start()方法

        public class TestRunnable implements  Runnable{
            @Override
            public void run() {
                printThreadMsg("2.2.TestRunnable run");
            }
        }
    

       /**
             * 2.1实现Runnable接口,并实现该接口的run()的方法,然后用实现Runnable接口的对象作为参数实例化Thread对象
             */
            new Thread(new TestRunnable()).start();
    
            /**
             * 2.2实现Runnable接口,并实现该接口的run()的方法,然后用实现Runnable接口的对象作为参数实例化Thread对象
             */
            new Thread(new Runnable() {
                @Override
                public void run() {
                    printThreadMsg("2.2. new Thread.new Runnable run");
                }
            }).start();



    3.实现Callable接口,重写call()方法

    (1)自定义类,实现Callable接口,实现call()方法

    (2)实例化ExecutorService 对象,实例化个刚刚自定义类(实现Callable接口)的对象,把它作为参数调用submit()方法

    (3)注意get()方法获取结果会造成阻塞

        public static  class   TestCallable implements Callable{
            @Override
            public Object call() throws Exception {
                /**
                 * 沉睡6秒,模拟耗时操作
                 */
                Thread.sleep(6000);
                System.out.println("3.TestCallable  call:threadName:"+Thread.currentThread().getName()+",threadId:"+Thread.currentThread().getId());
    
                return "这是 TestCallable call 执行完 返回的结果";
            }
        }

          /**
             *实现Callable接口,重写call()方法
             */
            ExecutorService mExecutorService= Executors.newSingleThreadExecutor();
            Future future=mExecutorService.submit(new TestCallable());
            try {
                /**
                 * future.get()用来获取结果,  会造成线程阻塞,直到call()结束
                 * 等待线程结束,并且返回结果
                 * 线程阻塞了
                 */
            String result= String.valueOf(future.get());
            System.out.println("3.TestCallable call return:"+result+","+Thread.currentThread().getName()+",threadId:"+Thread.currentThread().getId());
    
            } catch (Exception e) {
                e.printStackTrace();
            }

    最后附上所有代码

    package com.hex168.demo.therad;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import java.lang.ref.WeakReference;
    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;
    
    /**
     * author:dz_hexiang on 2017/9/23 13:06
     * email:472482006@qq.com
     * 测试线程创建
     */
    public class ThreadActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_therad);
            /**
             * 1.1 匿名内部类(继承Thread类,重写run()方法)
             */
            new Thread(){
                @Override
                public void run() {
                    printThreadMsg("1.1 new Thread() run");
                }
            }.start();
            /**
             * 1.2 继承Thread类,重写run()方法
             */
            new TestThread().start();
    
            /**
             * 2.1实现Runnable接口,并实现该接口的run()的方法,然后用实现Runnable接口的对象作为参数实例化Thread对象
             */
            new Thread(new TestRunnable()).start();
    
            /**
             * 2.2实现Runnable接口,并实现该接口的run()的方法,然后用实现Runnable接口的对象作为参数实例化Thread对象
             */
            new Thread(new Runnable() {
                @Override
                public void run() {
                    printThreadMsg("2.2. new Thread.new Runnable run");
                }
            }).start();
    
    
            /**
             *实现Callable接口,重写call()方法
             */
            ExecutorService mExecutorService= Executors.newSingleThreadExecutor();
            Future future=mExecutorService.submit(new TestCallable());
            try {
                /**
                 * future.get()用来获取结果,  会造成线程阻塞,直到call()结束
                 * 等待线程结束,并且返回结果
                 * 线程阻塞了
                 */
            String result= String.valueOf(future.get());
            System.out.println("3.TestCallable call return:"+result+","+Thread.currentThread().getName()+",threadId:"+Thread.currentThread().getId());
    
            } catch (Exception e) {
                e.printStackTrace();
            }
            /**
             * handler 及runnable都是在主线程
             */
            handler.post(handlerRunnable);
        }
    
        public class TestThread extends  Thread{
            @Override
            public void run() {
                printThreadMsg("1.2.new TestThread run");
            }
        }
    
        public class TestRunnable implements  Runnable{
            @Override
            public void run() {
                printThreadMsg("2.2.TestRunnable run");
            }
        }
    
        public Runnable handlerRunnable =new Runnable() {
            @Override
            public void run() {
                printThreadMsg("4.handler handlerRunnable run");
            }
        };
    
        /**
         * 打印线程信息
         * @param msg
         */
        private void printThreadMsg(String msg)
        {
            System.out.println(msg+":threadName:"+Thread.currentThread().getName()+",threadId:"+Thread.currentThread().getId());
        }
    
        private MyHandler handler=new MyHandler(this);
        static class MyHandler extends Handler{
            WeakReference<Activity> activityWeakReference;
    
            MyHandler(Activity c)
            {
                activityWeakReference=new WeakReference<Activity>(c);
            }
            @Override
            public void handleMessage(Message msg) {
                super.handleMessage(msg);
            }
        }
    
        public static  class   TestCallable implements Callable{
            @Override
            public Object call() throws Exception {
                /**
                 * 沉睡6秒,模拟耗时操作
                 */
                Thread.sleep(6000);
                System.out.println("3.TestCallable  call:threadName:"+Thread.currentThread().getName()+",threadId:"+Thread.currentThread().getId());
    
                return "这是 TestCallable call 执行完 返回的结果";
            }
        }
    }
    

    运行结果



    展开全文
  • 实现像沉浸式状态栏这样的效果有几种方法?只支持4.4以上版本吗?
  • 判断闰年有几种方法

    千次阅读 2017-12-18 11:40:24
    #include void main () { int year; scanf("请输入年份%d",&year); if(((year%4==0)&&(year%100==!0))||(year%400==0)) printf("此年是闰年\n"); else printf("此年不是闰年\n"); }
    #include <stdio.h>
    void main ()
    {
    int year;
    scanf("请输入年份%d",&year);
    if(((year%4==0)&&(year%100==!0))||(year%400==0))
    printf("此年是闰年\n");
    else
    printf("此年不是闰年\n");
    }
    展开全文
  • 有几种方法?? 检举| 2007-1-3 18:36 提问者: 网球小boy | 浏览次数:133349次 检举| 2007-1-3 18:37 满意回答 (破例,复制粘贴一下^^) 破解QQ“隐身”的几大绝招...
  • java 进程间通讯的有几种方法

    万次阅读 热门讨论 2014-09-12 12:44:01
    进程间通信的方法主要以下几种:  (1)管道(Pipe):管道可用于具有亲缘关系进程间的通信,允许一个进程和另一个与它共同祖先的进程之间进行通信。  (2)命名管道(named pipe):命名管道克服了管道没有...
  • HTML网页访问servlet有几种方法

    万次阅读 2017-08-16 20:56:10
    单击删除按钮,调用deleteFee(),调用确认框confirm()方法, 如果点击确认,改变当前浏览的网址 7.('src','createimg.do?x='+Math.random());" alt="验证码" title="点击更换" /> 单击改变验证码图片的src...
  • vue中父子组件传值有几种方法

    千次阅读 2019-07-02 14:11:12
    props event bus $emit vuex storage provide/inject(优点是不用层层传递了)
  • 1.创建并启动线程的6方式: 1)继承Thread类创建线程 2)实现Runnable接口创建线程 3)使用Callable和FutureTask创建线程 4)使用线程池,例如用Executor框架 5)Spring实现多线程(底层是线程池) 6)定时器Timer ...
  • java5以前,实现方法,分别使用new Thread()和new Thread(runnable)形式,第一继承Thread类,直接调用thread的run方法,所以,我们往往使用Thread子类,即new SubThread()。第二是实现Runnable接口,调用...
  • 在网页中页中加入CSS有几种方法!1.直接加在对象上。 title red 2.加到页面头部。 title span{color:red} red 3.链接外部的样式表文件。 title red 4.导入外部的样式文件 title @import url (demo.css) red 注意...
  • Python传入参数的几种方法

    万次阅读 多人点赞 2018-03-20 18:04:13
    Python传入参数的方法有:位置参数、默认参数、可变参数、关键字参数、和命名关键字参数、以及各种参数调用的组合 写在前面 Python唯一支持的参数传递方式是『共享传参』(call by sharing) 多数面向对象...
  • 同步的实现方法有,分别是synchronized,wait与notify。 wait():使一个线程处于等待状态,并且释放所持有的对象的lock。 sleep():使一个正在运行的线程处于睡眠状态,是一个静态方法,调用此方法要捕捉...
  • 同步有几种实现方法

    千次阅读 2019-07-23 18:31:40
    同步有几种实现方法,都是什么?分别是synchronized,wait与notify wait():使一个线程处于等待状态,并且释放所持有的对象的lock。 sleep():使一个正在运行的线程处于睡眠状态,是一个静态方法,调用此方法要捕捉...
  • 为何要使用同步? java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查),  ...即synchronized关键字修饰的方法。  由于java的每个对象都一个内置锁,当用
  • 创建DataAdapter的几种方法

    千次阅读 2018-07-30 11:49:45
    DataApter充当数据库和ADO.Net模型中非链接数据对象之间的桥梁,使用该对象的Fill方法...通常来说,创建DataAdapter有几种方法 下面做下简单的概括; private static string connString = @"Data Source=DE...
  • Java解析XML的几种方法

    万次阅读 多人点赞 2017-11-07 20:43:16
    Java解析XML有几种方法,本文就讨论是怎么使用这四种方法来解析XML文件,并分析他们的优缺点以及应用场合。1. DOM(Document Object Model)优点: 1. 允许应用程序对数据和结构做出更改。 2. 访问是双向的,...
  • c# 拼接Json串的几种方法

    千次阅读 2020-03-08 13:14:28
    C#定义多行字符串的方式 在定义的前面加上@符号: 1 string aa = @"asdfsdfsd 2 fsdsfsdfsdfsdfsdfsdfs 3 safasfsadfsdfasfsfsdfsd "; 在C#中拼接字符串有几种方法 1.利用JsonC...
  • 1.多线程4实现方法 继承Thread类,重写run方法 实现Runnable接口,重写run方法,实现Runnable接口的实现类的实例对象作为Thread构造函数的target 通过Callable和FutureTask创建线程 通过线程池创建线程 同步...
  • C语言以下几种取整方法

    万次阅读 多人点赞 2018-05-30 16:23:44
    C语言以下几种取整方法: 1、直接赋值给整数变量。如: int i = 2.5; 或 i = (int) 2.5; 这种方法采用的是舍去小数部分。 2、C/C++中的整数除法运算符"/"本身就取整功能(int / int),而下面介绍的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 78,581
精华内容 31,432
关键字:

有几种方法