as3 Search Class

package com.blogspot.flanture.arrays
{
 
// search Array as3 functions
// author: http://flanture.blogspot.com 
// contact: flanture@gmail.com
// January 2010
 
	import flash.display.Sprite;
 
	public class SearchArray extends Sprite {
 
		public function SearchArray() {
 
			// example usage
 
			var a:Array = [1,2,3,5,3];
			var b:Array = [2,4,6,8];
 
			search(6, b);
			trace("a combined with b: "+combine(a,b));
			trace("6 exists in b? "+searchB(6,b));
			trace("number of 3 in a? "+searchCount(3,a));
			trace("intersection of a and b: "+iSection(a,b));
			trace("shuffled b: "+shuffle(b));			
		}
 
	// function search finds element in array and displays result		
 
	public static function search(word:Object, arr:Array):void {
			var exists:Boolean = false;
			for(var i:uint=0; i < arr.length; i++){
				if(arr[i]==word){
					trace("Element exist on position "+i);
					exists = true;
				}
			}
			if(!(exists)){
				trace("Element doesn't exist in array.");
			}
		}
 
	// function searchB finds element in array and returns Boolean value
 
	public static function searchB(word:Object, arr:Array):Boolean {
			var exists:Boolean = false;
			for(var i:uint=0; i < arr.length; i++) {
				if(arr[i]==word){
					exists = true;
				}
			}
			return exists;
		}
 
	// function searchCount returns number of apperances of element in array
 
	public static function searchCount(word:Object, arr:Array):uint {
			var counter:uint = 0;
			for(var i:uint=0; i < arr.length; i++) {
				if(arr[i]==word){
					counter+=1;
				}
			}
			return counter;
		}
 
	// function iSection returns intersection array of two arrays
 
	public static function iSection(arr1:Array, arr2:Array):Array {
			var arr3:Array = new Array();
			var count:uint = 0;
			for(var i:uint=0; i < arr1.length; i++){
				for(var j:uint=0; j < arr2.length; j++){
					if(arr1[i]==arr2[j]){
						arr3[count] = arr1[i];
						count+=1;
					}
				}
			}
			return arr3;
		}
 
	// function shuffle simply shuffles given array elements
 
	public static function shuffle(b:Array):Array {
			var temp:Array = new Array();
			var templen:uint;
			var take:uint;
			while (b.length > 0) {
				take = Math.floor(Math.random()*b.length);
				templen = temp.push(b[take]);
				b.splice(take,1);
			}
			return temp;
		}
 
	// function combine returns union of two arrays
 
	public static function combine(ar1:Array, ar2:Array):Array {
		var rAr:Array = new Array();
		var i:uint = 0;
		var j:uint = 0;
		while((i < ar1.length) || (j < ar2.length)) {
			if(i < ar1.length){
				rAr.push(ar1[i]);
				i+=1;
			}
			if(j < ar2.length){
				rAr.push(ar2[j]);
				j+=1;
			}
		}
		return rAr;
		}		
	}
}
Advertisements

Objective-C manual create view

Interface builder ile kolay bir şekilde Viewlarımızı oluşturabiliyoruz. Fakat farklı bir yöntem denemek istersek bunu manual olarak kodla da yapabiliyoruz. Şimdi burada bunu paylaşıyorum daha da detaylandıracağım.

CGRect frame = CGRectMake(0, 0, 200, 150);
UIView *myView = [[UIView alloc] initWithFrame:frame];
[window addSubview:myView];
myView.backgroundColor = [UIColor yellowColor];
myView.alpha = 0.5;
[myView release];

İlk olarak CGRect ile bir screen çiziyorum bu bizim viewımızın frame alanı. 200 x 150 boyutlarında ve 0,0 koordinatlarında olmasını istediğim için ayarları set ediyorum. Sonra UIView ile yeni bir view oluşturuyorum. Daha sonra ana Windowuma subView ekliyorum bunu tanımlarken myView’i referans gösteriyorum. Daha sonra standart ayarlarını veriyorum. Başka bir işim kalmadığı için release ediyorum.