首页 文章 精选 留言 我的

精选列表

搜索[玲珑应用],共10000篇文章
优秀的个人博客,低调大师

递归算法介绍及Java应用实战

image 什么是递归算法 递归算法是把问题转化为规模缩小了的同类问题的子问题,然后递归调用函数(或过程)来表示问题的解。一个过程(或函数)直接或间接调用自己本身,这种过程(或函数)叫递归过程(或函数)。 递归过程一般通过函数或子过程来实现。递归方法:在函数或子过程的内部,直接或者间接地调用自己的算法。递归其实就是在栈内存中不断的加载同一个函数 什么时候用递归呢? 当一个功能被重复使用,而每一次使用该功能时的参数不确定,都由上次的功能元素结果来确定。 递归的注意事项 必须有可最终达到的终止条件,否则程序将陷入无穷循环出现栈内存溢出错误(StackOverflowError); 子问题在规模上比原问题小,或更接近终止条件; 子问题可通过再次递归调用求解或因满足终止条件而直接求解; 子问题的解应能组合为整个问题的解。 递归实战 下面用递归来实现从1+2+3+...N的小例子。 public static void main(String[] args) { System.out.println(sum(10)); } private static int sum(int n) { if (n == 1) { return n; } else { return n + sum(n - 1); } } 上面的例子采用递归算法从1加到10,看着是倒着来的从10加到1,每次减1进行相加真到最后为1终止。 推荐阅读 干货:Spring Boot & Cloud 最强技术教程 工具:推荐一款在线创作流程图、思维导图软件 分享Java干货,高并发编程,热门技术教程,微服务及分布式技术,架构设计,区块链技术,人工智能,大数据,Java面试题,以及前沿热门资讯等。 image

优秀的个人博客,低调大师

Android应用程序的语言切换

最近项目中用用到语言切换功能,第一想到的就是资源文件,没错。 在资源文件中新建一个文件夹values-en,在里面新建一个strings.xml,把默认values文件夹中的strings.xml中的内容Copy至values-en中的strings.xml,再把该文件夹中的中文内容转换为英文,例如<string name="set">设置</string>转换为<string name="set">set</string> 然后再主Activity中写一个方法 代码: public void switchLanguage(Locale locale){ Configuration config = getResources().getConfiguration();// 获得设置对象 Resources resources = getResources();// 获得res资源对象 DisplayMetrics dm = resources.getDisplayMetrics();// 获得屏幕参数:主要是分辨率,像素等。 config.locale = locale; // 简体中文 resources.updateConfiguration(config, dm); } 必须在OnCreate函数中调用 还得注意的是:在AndroidManifest.xml中要配置一下 在activity节点中加上这个属性:android:configChanges="locale" 添加权限:<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" /> 本文转自java豆子博客园博客,原文链接:http://www.cnblogs.com/error404/archive/2013/04/09/3010514.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

Android:GridView类似桌面显示所有应用

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 public class MainActivity extends Activity { private List<ResolveInfo> mApps = null ; private ArrayList<HashMap<String, Object>> data = null ; private HashMap<String, Object> hashMap = null ; class ViewHolder { ImageView viewImg; TextView viewName; } @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); loadapp(); setContentView(R.layout.activity_main); GridView gridView = (GridView) findViewById(R.id.gridView1); BaseAdapter adapter = new BaseAdapter() { @Override public View getView( int position, View convertView, ViewGroup parent) { LinearLayout layout; ViewHolder holder = new ViewHolder(); if (convertView == null ) { LayoutInflater inflater = getLayoutInflater(); layout = (LinearLayout) inflater.inflate(R.layout.linelayout, null ); holder.viewImg = (ImageView) layout.findViewById(R.id.imageView1); holder.viewName = (TextView) layout.findViewById(R.id.textView1); layout.setTag(holder); } else { layout = (LinearLayout) convertView; holder = (ViewHolder) layout.getTag(); } ResolveInfo info = mApps.get(position); holder.viewImg.setImageDrawable(info.activityInfo.loadIcon(getPackageManager())); holder.viewName.setText(info.activityInfo.loadLabel(getPackageManager()).toString()); return layout; } @Override public long getItemId( int position) { return position; } @Override public Object getItem( int position) { return mApps.get(position); } @Override public int getCount() { return mApps.size(); } }; gridView.setAdapter(adapter); } private void loadapp() { Intent intent = new Intent(Intent.ACTION_MAIN, null ); intent.addCategory(Intent.CATEGORY_LAUNCHER); mApps = getPackageManager().queryIntentActivities(intent, 0 ); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true ; } } 本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1218512,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册